首页 > web前端 > js教程 > 正文

AngularJS基础学习笔记之控制器_AngularJS

WBOY
发布: 2016-05-16 15:59:53
原创
1054 人浏览过

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所在的

中。

  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>

登录后复制

将控制器放在外部文件中
  在大型应用中,常常会将控制器代码写在外部文件中。

  将

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板