Pengontrol AngularJS dengan Contoh ng-Controller
Apa itu Pengontrol di AngularJS?
A pengawas di AngularJS mengambil data dari Tampilan, memproses data, dan kemudian mengirimkan data tersebut ke tampilan yang ditampilkan ke pengguna akhir. Pengontrol akan memiliki logika bisnis inti Anda. Pengontrol akan menggunakan model data, melakukan pemrosesan yang diperlukan dan kemudian meneruskan keluarannya ke tampilan yang selanjutnya ditampilkan kepada pengguna akhir.
Apa yang dilakukan Pengendali dari Perspektif Angular?
Berikut ini adalah definisi sederhana cara kerja AngularJS Controller:

- Tanggung jawab utama pengontrol adalah mengontrol data yang diteruskan ke tampilan. Ruang lingkup dan pandangan memiliki komunikasi dua arah.
- Properti tampilan dapat memanggil โfungsiโ pada cakupan. Terlebih lagi kejadian pada tampilan dapat memanggil โmetodeโ pada ruang lingkup. Cuplikan kode di bawah ini memberikan contoh sederhana dari suatu fungsi.
- The fungsi($cakupan) yang didefinisikan ketika mendefinisikan pengontrol dan fungsi internal yang digunakan untuk mengembalikan rangkaian $scope.firstName dan $scope.lastName.
- In AngularJS, ketika Anda mendefinisikan suatu fungsi sebagai variabel, itu dikenal sebagai Metode.
- Data dengan cara ini diteruskan dari pengontrol ke cakupan, lalu data diteruskan bolak-balik dari cakupan ke tampilan.
- Cakupan digunakan untuk mengekspos model ke tampilan. Model dapat dimodifikasi melalui metode yang ditentukan dalam cakupan yang dapat dipicu melalui peristiwa dari tampilan. Kita dapat mendefinisikan pengikatan model dua arah dari ruang lingkup ke model.
- Kontroler sebaiknya tidak digunakan untuk memanipulasi DOM. Hal ini harus dilakukan dengan arahan yang akan kita lihat nanti.
- Praktik terbaik adalah memiliki pengontrol berdasarkan fungsionalitas. Misalnya, jika Anda memiliki formulir untuk masukan dan Anda memerlukan pengontrol untuk itu, buatlah pengontrol yang disebut โpengontrol formulirโ.
Cara Membangun Pengontrol Dasar di AngularJS
Berikut langkah-langkah membuat controller di AngularJS:
Langkah 1) Buat Halaman HTML dasar
Sebelum kita mulai membuat pengontrol, pertama-tama kita harus menyiapkan halaman HTML dasar.
Cuplikan kode di bawah ini adalah halaman HTML sederhana yang memiliki judul "Pendaftaran Acara" dan memiliki referensi ke perpustakaan penting seperti Bootstrap, jquery dan Sudut.
- Kami menambahkan referensi ke stylesheet CSS bootstrap, yang akan digunakan bersama dengan perpustakaan bootstrap.
- Kami menambahkan referensi ke perpustakaan AngularJs. Jadi sekarang apapun yang kita lakukan dengan Angular.js kedepannya akan direferensikan dari perpustakaan ini.
- Kami menambahkan referensi ke perpustakaan bootstrap untuk membuat halaman web kami lebih responsif terhadap kontrol tertentu.
- Kami telah menambahkan referensi ke perpustakaan jquery yang akan digunakan untuk manipulasi DOM. Ini diperlukan oleh Angular karena beberapa fungsi di Angular bergantung pada perpustakaan ini.
Secara default, cuplikan kode di atas akan ada di semua contoh kita, sehingga kita hanya bisa menampilkan kode AngularJS spesifik di bagian selanjutnya.
Langkah 2) Periksa file dan struktur file
Kedua, mari kita lihat file dan struktur file yang akan kita mulai selama kursus kita.
- Pertama kita memisahkan file kita ke dalam 2 folder seperti yang dilakukan dengan aplikasi web konvensional. Kami memiliki folder "CSS". Ini akan berisi semua file cascading style sheet kita, dan kemudian kita akan memiliki folder "lib" yang akan menyimpan semua file kita. JavaNaskah file.
- File bootstrap.css ditempatkan di folder CSS dan digunakan untuk menambahkan tampilan dan nuansa yang bagus untuk situs web kita.
- Angular.js adalah file utama kami yang diunduh dari situs AngularJS dan disimpan di folder lib kami.
- File app.js akan berisi kode kami untuk pengontrol.
- File bootstrap.js digunakan untuk melengkapi file bootstrap.cs untuk menambahkan fungsionalitas bootstrap ke aplikasi web kita.
- File jquery akan digunakan untuk menambahkan fungsionalitas manipulasi DOM ke situs kami.
Langkah 3) Gunakan kode AngularJS untuk menampilkan hasilnya
Yang ingin kita lakukan di sini hanyalah menampilkan kata-kata โAngularJSโ dalam format teks dan kotak teks saat halaman dilihat di browser. Mari kita lihat contoh tentang cara menggunakan angular.js untuk melakukan ini:
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body>
<h1> Guru99 Global Event</h1>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>
<div ng-app="DemoApp" ng-controller="DemoController">
Tutorial Name : <input type="text" ng-model="tutorialName"><br>
This tutorial is {{tutorialName}}
</div>
<script>
var app = angular.module('DemoApp',[]);
app.controller('DemoController', function($scope){
$scope.tutorialName = "Angular JS";
});
</script>
</body>
</html>
Code Penjelasan:
- The ng-aplikasi kata kunci digunakan untuk menunjukkan bahwa aplikasi ini harus dianggap sebagai aplikasi sudut. Apa pun yang dimulai dengan awalan 'ng' dikenal sebagai a Direktif. โDemoAppโ adalah nama yang diberikan untuk aplikasi Angular.JS kami.
- Kami telah membuat tag div dan dalam tag ini kami telah menambahkan direktif ng-controller bersama dengan nama Controller kami โDemoControllerโ. Ini pada dasarnya membuat tag div kita memiliki kemampuan untuk mengakses konten Pengontrol Demo. Anda perlu menyebutkan nama pengontrol di bawah arahan untuk memastikan bahwa Anda dapat mengakses fungsionalitas yang ditentukan dalam pengontrol.
- Kami membuat pengikatan model menggunakan direktif ng-model. Fungsinya adalah mengikat kotak teks untuk Nama Tutorial agar terikat ke variabel anggota โtutorialNameโ.
- Kami membuat variabel anggota yang disebut โtutorialNameโ yang akan digunakan untuk menampilkan informasi yang diketik pengguna di kotak teks untuk Nama Tutorial.
- Kami membuat modul yang akan dilampirkan ke aplikasi DemoApp kami. Jadi modul ini sekarang menjadi bagian dari aplikasi kita.
- Dalam modul, kita mendefinisikan fungsi yang memberikan nilai default โAngularJSโ ke variabel tutorialName kita.
Jika perintah berhasil dijalankan, Output berikut akan ditampilkan saat Anda menjalankan kode di peramban.
Keluaran:
Karena kita menetapkan variabel tutorialName dengan nilai โAngular JSโ, โโini akan ditampilkan di kotak teks dan di baris teks biasa.
Cara Mendefinisikan Metode di Pengontrol AngularJS
Biasanya, seseorang ingin mendefinisikan beberapa metode di pengontrol untuk memisahkan logika bisnis.
Misalnya, jika Anda ingin pengontrol melakukan 2 hal dasar,
- Lakukan penjumlahan 2 angka
- Lakukan subtracperkalian 2 angka
Idealnya, Anda akan membuat 2 metode di dalam controller Anda, satu untuk melakukan penjumlahan dan yang lainnya untuk melakukan pengurangan.traction.
Mari kita lihat contoh sederhana bagaimana Anda dapat mendefinisikan metode khusus dalam pengontrol Angular.JS. Pengontrol hanya akan mengembalikan sebuah string.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body ng-app="DemoApp">
<h1> Guru99 Global Event</h1>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>
<div ng-app="DemoApp" ng-controller="DemoController">
Tutorial Name :<input type="text" ng-model="tutorialName"><br>
<br>
This tutorial is {{tutorialName}}
</div>
<script>
var app = angular.module('DemoApp', []);
app.controller('DemoController', function($scope) {
$scope.tutorialName = "Angular JS";
$scope.tName = function() {
return $scope.tName;
};
});
</script>
</body>
</html>
Code Penjelasan:
- Di sini, kita hanya mendefinisikan fungsi yang mengembalikan string โAngularJSโ. Fungsi tersebut dilampirkan ke objek cakupan melalui variabel anggota yang disebut namatutorial.
- Jika perintah berhasil dijalankan, Output berikut akan ditampilkan saat Anda menjalankan kode di peramban.
Keluaran:
Pengontrol AngularJS dengan Contoh ng-Controller
Mari kita lihat contoh โHelloWorldโ di mana semua fungsi ditempatkan dalam satu file. Sekarang saatnya menempatkan kode pengontrol di file terpisah.
Mari ikuti langkah-langkah di bawah ini untuk melakukannya:
Langkah 1) Di file app.js, tambahkan kode berikut untuk pengontrol Anda
angular.module('app',[]).controller('HelloWorldCtrl',function($scope)
{
$scope.message = "Hello World"
});
Kode di atas melakukan hal-hal berikut:
- Tentukan modul bernama "aplikasi" yang akan menampung pengontrol bersama dengan fungsionalitas pengontrol.
- Buat pengontrol dengan nama โHelloWorldCtrlโ. Kontroler ini akan digunakan untuk memiliki fungsi menampilkan pesan โHello Worldโ.
- Objek lingkup digunakan untuk meneruskan informasi dari pengontrol ke tampilan. Jadi dalam kasus kita, objek lingkup akan digunakan untuk menampung variabel yang disebut โpesanโ.
- Kami mendefinisikan pesan variabel dan memberikan nilai "Halo Dunia" padanya.
Langkah 2) Sekarang, di file Sample.html Anda, tambahkan kelas div yang akan berisi direktif ng-controller dan kemudian tambahkan referensi ke variabel anggota โmessageโ
Juga jangan lupa untuk menambahkan referensi ke file skrip app.js yang memiliki kode sumber untuk pengontrol Anda.
<!DOCTYPE html>
<html ng-app="app">
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
<link rel="stylesheet" href="css/bootstrap.css"/>
</head>
<body>
<h1> Guru99 Global Event</h1>
<div class="container">
<div ng-controller="HelloWorldCtrl">{{message}}</div>
</div>
<script src="https://code.angularjs.org/1.6.9/angular.js"></script>
<script src="lib/angular.js"></script>
<script src="lib/bootstrap.js"></script>
<script src="lib/jquery-1.11.3.min.js"></script>
<script src="app.js"></script>
</body>
</html>
Jika kode di atas dimasukkan dengan benar, Output berikut akan ditampilkan saat Anda menjalankan kode di peramban.
Keluaran:
Ringkasan
- Tanggung jawab utama pengontrol adalah membuat objek cakupan yang selanjutnya diteruskan ke tampilan
- Cara membuat pengontrol sederhana menggunakan arahan ng-app, ng-controller, dan ng-model
- Bagaimana cara menambahkan metode khusus ke pengontrol yang dapat digunakan untuk memisahkan berbagai fungsi dalam modul sudutjs.
- Pengontrol dapat didefinisikan dalam file eksternal untuk memisahkan lapisan ini dari lapisan Tampilan. Ini biasanya merupakan praktik terbaik saat membuat aplikasi web.










