AngularJs 功能(四)--控制器
控制器控制器Controller是Angular应用三大组成部分之一。 说一说我对angular控制器的理解: 要明确创建一个$scope 对象,我们就要给DOM元素安上一个controller对象,使用的是ng-controller 指令属性: <div ng-controller="MyController"> {{ person.name }} </div> ng-controller指令给所在的DOM元素创建了一个新的$scope 对象,并将这个$scope 对象包含进外层DOM元素的$scope 对象里。在上面的例子里,这个外层DOM元素的$scope 对象,就是$rootScope 对象。 scope对象初始化 给scope对象增加一些行为 下面的示例演示如何为controller增加方法 angular.module('myApp'[]).controller('DoubleController',['$scope',function($scope) { $scope.double = function(value) { return value * 2; }; }]); controller一旦被添加到DOM中,该方法就可以在template中被调用 <div ng-controller="DoubleController"> Two times <input ng-model="num"> equals {{ double(num) }} </div> 要注意以下几点: ng-controller directive 隐式地为template创建了一个scope,这个scope又被SpicyController controller管理。 所有scope都遵循原型继承(prototypal inheritance),这意味着它们都能访问父scope们。对任何属性和方法,如果AngularJS在当前scope上找不到,就会到父 scope上去找,如果在父scope上也没找到,就会继续向上回溯,一直到$rootScope 上。 唯一的例外:有些指令属性可以选择性地创建一个独立的scope,让这个scope不继承它的父scope们,这个会在指令详解中说明。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |