Pengawal AngularJS
Pengawal AngularJS Data kawalan aplikasi AngularJS.
Pengawal AngularJS ialah objek JavaScript biasa.
Pengawal AngularJS
Aplikasi AngularJS dikawal oleh pengawal. Arahan
ng-controller mentakrifkan pengawal aplikasi.
Pengawal ialah objek JavaScript, dicipta oleh JavaScript standard pembina objek.
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="personCtrl"> 名: <input type="text" ng-model="firstName"><br> 姓: <input type="text" ng-model="lastName"><br> <br> 姓名: {{fullName()}} </div> <script> var app = angular.module('myApp', []); app.controller('personCtrl', function($scope) { $scope.firstName = "John"; $scope.lastName = "Doe"; $scope.fullName = function() { return $scope.firstName + " " + $scope.lastName; } }); </script> </body> </html>
Run Instance»
Klik butang "Run Instance" untuk melihat contoh dalam talian
Penghuraian aplikasi:
Aplikasi AngularJS ditakrifkan oleh ng-app. Aplikasi berjalan dalam <div>. Atribut
ng-controller="myCtrl" ialah arahan AngularJS. Digunakan untuk menentukan pengawal. Fungsi
myCtrl ialah fungsi JavaScript.
AngularJS menggunakan objek $scope untuk memanggil pengawal.
Dalam AngularJS, $scope ialah objek aplikasi (kepunyaan pembolehubah dan fungsi aplikasi).
Controller's $scope (bersamaan dengan skop, skop kawalan) digunakan untuk menyimpan objek Model AngularJS.
Pengawal mencipta dua sifat dalam skop (Nama depan dan Nama Akhir). Arahan
ng-model mengikat medan input kepada sifat pengawal (firstName dan lastName).
Kaedah pengawal
Contoh di atas menunjukkan objek pengawal dengan dua sifat: lastName dan firstName.
Pengawal juga boleh mempunyai kaedah (pembolehubah dan fungsi):
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="personCtrl"> 名: <input type="text" ng-model="firstName"><br> 姓: <input type="text" ng-model="lastName"><br> <br> 姓名: {{fullName()}} </div> <script> var app = angular.module('myApp', []); app.controller('personCtrl', function($scope) { $scope.firstName = "John"; $scope.lastName = "Doe"; $scope.fullName = function() { return $scope.firstName + " " + $scope.lastName; } }); </script> </body> </html>
Run Instance»
Klik butang "Jalankan Instance" untuk melihat contoh dalam talian
Pengawal dalam fail luaran
Dalam aplikasi besar, adalah perkara biasa untuk menyimpan pengawal dalam fail luaran.
Hanya salin kod dalam teg <skrip> ke dalam fail luaran yang dipanggil personController.js:
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="personCtrl"> 名: <input type="text" ng-model="firstName"><br> 姓: <input type="text" ng-model="lastName"><br> <br> 姓名: {{firstName + " " + lastName}} </div> <script src="personController.js"></script> </body> </html>
Jalankan contoh»
Klik butang "Jalankan contoh" untuk melihat contoh dalam talian
Contoh lain
Contoh berikut mencipta fail pengawal baharu:
$skop.nama = [
{nama:'Jani',negara:'Norway'},
{nama:'Hege',negara:'Sweden'},
{name:'Kai',country:'Denmark'}
];
});
Simpan fail sebagai namesController.js:
Kemudian , Gunakan fail pengawal dalam aplikasi:
Instance
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="namesCtrl"> <ul> <li ng-repeat="x in names"> {{ x.name + ', ' + x.country }} </li> </ul> </div> <script src="namesController.js"></script> </body> </html>
Run Instance»
Klik "Run Butang contoh" " untuk melihat contoh dalam talian