源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

AngularJS基础学习笔记之控制器

  • 时间:2020-01-01 14:40 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:AngularJS基础学习笔记之控制器
AngularJS控制器用来控制AngularJS applications的数据。   AngularJS控制器就是普通的JavaScript对象。 AngularJS控制器   AngularJS applications通过控制器进行控制。   ng-controller指令定义了一个application的控制器。   一个控制器就是一个JavaScript对象,它可以通过标准的JavaScript对象构造函数来创建。
<div ng-app="myApp" ng-controller="myCtrl">

First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}

</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
  $scope.firstName = "John";
  $scope.lastName = "Doe";
});
</script>

代码解释:   AngularJS application通过ng-app="myApp"来定义。该application的有效作用域处于ng-app所在的<div>中。   ng-controller="myCtrl"属性即一个AngularJS指令,它定义了一个控制器。   myCtrl函数是一个普通的JavaScript函数。   AngularJS使用$scope对象来调用控制器。   在AngularJS中,$scope是一个application对象(即application变量和函数的所有者)。   控制器包含两个属性(或者叫变量):firstName和lastName。它们被附加到$scope对象上。   ng-model指令将input标签的值绑定到控制器的属性上(firstName和lastName)。 控制器的方法   上面的例子展示了控制器对象包含两个属性:lastName和firstName。   控制器也可以包含方法(将函数赋值给变量):
<div ng-app="myApp" ng-controller="personCtrl">

First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{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>

将控制器放在外部文件中   在大型应用中,常常会将控制器代码写在外部文件中。   将<script>标签中的代码拷贝到personController.js外部文件中:
<div ng-app="myApp" ng-controller="personCtrl">

First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}

</div>

<script src="personController.js"></script>

另一个例子   创建一个新的控制器文件并命名为namesController.js:
angular.module('myApp', []).controller('namesCtrl', function($scope) {
  $scope.names = [
    {name:'Jani',country:'Norway'},
    {name:'Hege',country:'Sweden'},
    {name:'Kai',country:'Denmark'}
  ];
});
  然后再application中使用这个控制器文件:
<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>
以上所述就是本文的全部内容了,希望大家能够喜欢。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部