1 来看例子 2 angular.module("app",[]) 3 .controller("demoController",["$scope",function($scope){ 4 $scope.title = "angualr"; 5 }]) 6 7 8 <div ng-app="app" ng-controller="demoController"> hello : {{title }} ! </div> 9 10 对于view与controller的绑定一般使用内置service $scope 11 12 在angurlar1.2+版本以后加入了controllerAs语法 13 angular.module("app",[]) 14 .controller("demoController",[function(){ 15 this.title = "angualr"; 16 }]) 17 <div ng-app="app" ng-controller="demoController as demo"> hello : {{demo.title}} ! </div> 18 这里我们可以看见现在controller不再有$scope的注入了,感觉controller就是一个很简单的平面的JavaScript对象了,不存在任何的差别了。再则就是view上多增加了个demoController as demo,给controller起了一个别名,在此后的view模板中靠这个别名来访问数据对象。 19 controller内部的this指向view视图的demo 20 21 angular源码: 22 if (directive.controllerAs) { locals.$scope[directive.controllerAs] = controllerInstance; } 23 将controllerAs绑定到了$scope对象上
angular_directive的controllerAs
原文:http://www.cnblogs.com/windSamW/p/5041323.html