我創建了一個指令,我正在循環它。我遇到的問題是,由於某種原因,$ scope.name顯示從最後指令的名稱,即使我做了一個分離範圍角度指令共享範圍問題
angular.module("testApp")
.controller("testingCtrl","$scope",function($scope) {
infos =[
{
name ="test1"
},
{
name ="test2"
}
]
$scope.init=function(name){
$scope.name=name
}
})
.controller("directiveCtrl",["$scope",function($scope){
console.log("HEY",$scope.name);
}])
.directive("testing",function(){
return{
restrict:"E",
controller:"directiveCtrl",
scope:{
name:"="
},
template:"<h1>{{name}}</h1>"
}
})
<div ng-app="testApp">
<div ng-controller="testingCtrl">
<div ng-repeat="info in infos" ng-init="init(info.name)">
<testing name="name"></testing>
</div>
</div>
</div>
所以它的顯示
test2的
TEST2
,但我要的是
test1的
test2
謝謝你的時間。
你爲什麼要創建一個對象來傳遞的名字嗎? – dwbartz
嗨@dwbartz我想複製更短,更容易閱讀代碼的情況,因爲真正的一個更大,它不適合在這裏。 – luis
擺脫ng-init和那個init函數。玩範圍很糟糕。 – gyc