کنترلهای AngularJS
- صفحه قبلی پیوند دادههای AngularJS
- صفحه بعدی محدودههای AngularJS
کنترلهای AngularJSدادههای برنامههای AngularJS را کنترل میکند。
کنترلگرهای AngularJS عادی هستند شیء JavaScript。
کنترلهای AngularJS
برنامههای AngularJS توسط کنترلگرها کنترل میشوند.
دستور ng-controller کنترلگر برنامه را تعریف میکند.
کنترلگرها توسط سازنده استاندارد شیء JavaScript ایجاد میشوند شیء JavaScript。
مثالهای AngularJS
<div ng-app="myApp" ng-controller="myCtrl"> نام: <input type="text" ng-model="firstName"><br> نام خانوادگی: <input type="text" ng-model="lastName"><br> <br> نام کامل: {{firstName + " " + lastName}} </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.firstName = "Bill"; $scope.lastName = "Gates"; }); </script>
شرح برنامه:
برنامههای AngularJS توسط ng-app="myApp"
تعریف. برنامه در داخل <div> اجرا میشود.
ng-controller="myCtrl"
ویژگی یک دستورالعمل AngularJS است. آن یک کنترلر را تعریف میکند.
myCtrl
توابع یک تابع JavaScript هستند.
AngularJS از $scope
موضوع به کنترلر فراخوانی میشود.
در AngularJS، $scope مالک برنامه است (متغیرها و توابع برنامه).
کنترلر در محدوده (firstName
و lastName
در یک تابع (در اینجا)
ng-model
دستورالعملها فیلدهای ورودی را به ویژگیهای کنترلر (firstName و lastName) پیوند میدهند.
روشهای کنترلر
مثال بالا یک کنترلر با دو ویژگی دارد: lastName و firstName.
کنترلرها میتوانند دارای روشها (به عنوان متغیرهای تابع) باشند:
مثالهای AngularJS
<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 = "Bill"; $scope.lastName = "Gates"; $scope.fullName = function() { return $scope.firstName + " " + $scope.lastName; }; }); </script>
کنترلرهای خارجی
در برنامههای بزرگتر، ذخیره کنترلرها در فایلهای خارجی بسیار رایج است.
تنها کافی است کد بین تگهای <script> را به یک فایل به نام personController.js در فایلهای خارجی:
مثالهای AngularJS
<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 src="personController.js"></script>
مثال دیگری
برای نمونه بعدی، ما یک فایل کنترلر جدید ایجاد خواهیم کرد:
angular.module('myApp', []).controller('namesCtrl', function($scope) { $scope.names = [ {name:'Jani',country:'Norway'}, {name:'Hege',country:'Sweden'}, {name:'Kai',country:'Denmark'} ]; });
فایل را ذخیره کنید به عنوان namesController.js:
سپس در برنامه از فایل کنترلر استفاده کنید:
مثالهای AngularJS
<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>
- صفحه قبلی پیوند دادههای AngularJS
- صفحه بعدی محدودههای AngularJS