码迷,mamicode.com
首页 > Web开发 > 详细

angularjs的ng-repeat指令下的scope作用域

时间:2015-05-11 06:33:27      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

ng-repeat指令在迭代的时候,每次迭代都会创建一个新的scope,比如下面的代码:

<div ng-repeat="list in lists" ng-controller="listController">
        <some-directive/>
</div>
app.controller(‘listController‘,function($scope){
   $scope.lists = [1,2,3,4,5] 
})

div所在的scope就是listController控制器定义的$scope,而some-directive指令并没有控制器,虽然它没有控制器,但是它却是有自己的scope的,且scope下有一个属性list.还有一个属性$index,等等.

所以,ng-repeat指令创建了很多个同样的迭代,每个迭代都有自己的scope,每个scope下都有自己的list属性和$index属性等.这样,如果是在写ng-repeat指令下面的指令的时候(比如这里的some-directive),需要知道它是有自己的scope的.

这在我之前自己写的模拟ng-repeat指令的时候,代码里就可以看出:

angular学习笔记(三十)-指令(6)-transclude()方法(又称linker()方法)-模拟ng-repeat指令

 

angularjs的ng-repeat指令下的scope作用域

标签:

原文地址:http://www.cnblogs.com/liulangmao/p/4493553.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!