AngularJS - Menu Navigasi
Hai teman-teman, pengembang web masa depan! Hari ini, kita akan melihat dunia yang menarik AngularJS dan belajar membuat menu navigasi. Sebagai guru komputer yang ramah di lingkungan sekitar Anda, saya disini untuk mengarahkan Anda dalam perjalanan ini langkah demi langkah. Jadi, ambil minuman kesukaan Anda, duduk nyaman, dan mari kita mulai petualangan coding ini bersama!
Apa Itu Menu Navigasi?
Sebelum kita masuk ke dalam kode, mari kitaambil waktu untuk memahami apa itu menu navigasi. Bayangkan Anda berada di perpustakaan besar dengan jutaan buku. Bagaimana Anda akan menemukan buku yang Anda inginkan? Anda mungkin mencari tanda atau direktori, kan? Well, menu navigasi di website adalah seperti direktori perpustakaan itu. Itu membantu pengguna menemukan jalan di website Anda dengan mudah.
Mengapa Menggunakan AngularJS untuk Menu Navigasi?
Anda mungkin berpikir, " Mengapa harus menggunakan AngularJS untuk menu navigasi?" Well, teman curius, AngularJS membuat membuat menu dinamis dan interaktif menjadi mudah. Itu seperti memiliki pisau swiss army super-powered untuk pengembangan web!
Memulai Dengan Menu Navigasi AngularJS
Langkah 1: Menyiapkan Proyek Anda
Pertama-tama, mari kita siapkan proyek kita. Kita akan memasukkan AngularJS ke dalam file HTML kita. Berikut adalah cara kita melakukannya:
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<title>Menu Navigasi AngularJS Saya</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular.min.js"></script>
</head>
<body>
<!-- Konten kita akan berada di sini -->
<script src="app.js"></script>
</body>
</html>
Dalam kode ini, kita mengatakan kepada HTML bahwa kita menggunakan AngularJS dengan menambahkan ng-app="myApp"
ke tag <html>
. Kita juga memasukkan pustaka AngularJS dan file JavaScript kita sendiri (app.js
) tempat kita akan menulis kode AngularJS.
Langkah 2: Membuat Modul dan Controller AngularJS
Sekarang, mari kita buat modul dan controller AngularJS. Di file app.js
, tambahkan kode berikut:
var app = angular.module('myApp', []);
app.controller('NavController', function($scope) {
$scope.menuItems = [
{ name: 'Home', url: '#/' },
{ name: 'About', url: '#/about' },
{ name: 'Contact', url: '#/contact' }
];
});
Di sini, kita membuat modul AngularJS yang disebut myApp
dan controller yang disebut NavController
. Controller ini memiliki array dari item menu yang kita akan gunakan untuk membuat menu navigasi.
Langkah 3: Membuat HTML Menu Navigasi
Sekarang, mari kita tambahkan HTML untuk menu navigasi kita. Perbarui file HTML Anda untuk termasuk ini:
<body ng-controller="NavController">
<nav>
<ul>
<li ng-repeat="item in menuItems">
<a href="{{item.url}}">{{item.name}}</a>
</li>
</ul>
</nav>
<script src="app.js"></script>
</body>
Dalam kode ini, kita menggunakan direktif ng-controller
untuk memberitahu AngularJS untuk menggunakan controller NavController
. Kita juga menggunakan direktif ng-repeat
untuk mengulang item menu kita dan membuat item daftar untuk setiap satu.
Fitur Lanjut
Menambahkan State Aktif ke Item Menu
Marilah kita membuat menu kita sedikit lebih menarik dengan menambahkan state aktif ke halaman saat ini. Perbarui controller Anda di app.js
:
app.controller('NavController', function($scope, $location) {
$scope.menuItems = [
{ name: 'Home', url: '#/' },
{ name: 'About', url: '#/about' },
{ name: 'Contact', url: '#/contact' }
];
$scope.isActive = function(viewLocation) {
return viewLocation === $location.path();
};
});
Dan perbarui HTML Anda:
<li ng-repeat="item in menuItems" ng-class="{ active: isActive(item.url) }">
<a href="{{item.url}}">{{item.name}}</a>
</li>
Sekarang, item menu halaman saat ini akan memiliki kelas 'aktif'.
Membuat Menu Dropdown
Marilah kita tingkatkan dan tambahkan menu dropdown. Perbarui controller Anda:
$scope.menuItems = [
{ name: 'Home', url: '#/' },
{
name: 'Services',
url: '#/services',
subItems: [
{ name: 'Web Design', url: '#/services/web-design' },
{ name: 'SEO', url: '#/services/seo' }
]
},
{ name: 'Contact', url: '#/contact' }
];
Dan perbarui HTML Anda:
<nav>
<ul>
<li ng-repeat="item in menuItems" ng-class="{ active: isActive(item.url) }">
<a href="{{item.url}}">{{item.name}}</a>
<ul ng-if="item.subItems">
<li ng-repeat="subItem in item.subItems">
<a href="{{subItem.url}}">{{subItem.name}}</a>
</li>
</ul>
</li>
</ul>
</nav>
Kesimpulan
Dan itu dia, teman-teman! Anda telah membuat menu navigasi dinamis dan interaktif menggunakan AngularJS. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba gaya dan fitur yang berbeda.
Berikut adalah tabel yang menggabungkan direktif AngularJS utama yang kita gunakan:
Direktif | Tujuan |
---|---|
ng-app | Menentukan elemen root dari aplikasi AngularJS |
ng-controller | Menentukan controller mana yang akan digunakan untuk elemen HTML |
ng-repeat | Mengulang set HTML sejumlah tertentu |
ng-class | Mengikat satu atau lebih kelas CSS ke elemen HTML secara dinamis |
ng-if | Menentukan secara kondisional apakah elemen HTML harus ditampilkan |
Terus coding, terus belajar, dan terutama, terus bersenang-senang! Sampai jumpa lagi, ini adalah guru komputer yang ramah Anda yang menutup. Selamat coding!
Credits: Image by storyset