ng-repeat
没有获取通过'='
绑定传递的属性。
HTML:
<body ng-controller="myCtrl">
<div my-directive list="users">
<ul>
<li ng-repeat="item in list">
{{item.name}}
</li>
</ul>
</div>
</body>
JS:
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope) {
$scope.users = [
{ name: 'John Doe'},
{ name: 'Jane Doe' },
{ name: 'Jesse Doe' }
];
});
app.directive('myDirective', [function() {
return {
restrict: 'A',
scope: {
list: '='
},
link: function(scope, element, attrs) {
}
}
}]);
以上代码在角度1.0.8下工作正常: http://jsfiddle.net/shazmoh/4DN39/7/
但不是角度1.2.14: http://jsfiddle.net/shazmoh/4DN39/6/
我错过的'1.2.x'改变了什么?
答案 0 :(得分:0)
隔离范围仅暴露于具有范围属性的指令
没有隔离范围的指令不能获得隔离范围 在同一元素上隔离指令。如果您的代码依赖于此 行为(非隔离指令需要从内部访问状态) 隔离范围),更改isolate指令使用范围locals 明确地传递这些。
所以,用&gt; 1.2.0,孤立的指令完全隔离。