我在將數據對象從ng-repeat傳遞給內部指令時遇到問題。你可以在這裏找到它:JSBin將數據對象傳遞給ng-repeat內部的指令
在Chrome開發人員工具中,我可以看到數據對象沒有定義,但我找不出原因。我將它傳遞給該指令,然後將其綁定到範圍。
我認爲,ng-repeat的每個循環都會構建一個作用域,並對其中的指令進行解析。正確?
另外我想通過我的數據對象的指令,並訪問所有的數據那裏,並在該對象上設置偵聽器。那可能嗎?
我在將數據對象從ng-repeat傳遞給內部指令時遇到問題。你可以在這裏找到它:JSBin將數據對象傳遞給ng-repeat內部的指令
在Chrome開發人員工具中,我可以看到數據對象沒有定義,但我找不出原因。我將它傳遞給該指令,然後將其綁定到範圍。
我認爲,ng-repeat的每個循環都會構建一個作用域,並對其中的指令進行解析。正確?
另外我想通過我的數據對象的指令,並訪問所有的數據那裏,並在該對象上設置偵聽器。那可能嗎?
這是你的指示的代碼片段:
return {
restrict: 'E',
scope: {
data: "="
},
link: function(scope, element, attrs) {
// here is the problem, data is really undefined
console.log(data);
我們可以看到的是獲得真正的未定義的變量data
。我們需要做的是通過scope.data
訪問它。因此,這將做到:
link: function(scope, element, attrs) {
console.log(scope.data); // here scope.data
有一個工作plunker
您與屬性數據現在
scope: {
data: "="
}
屬性數據被映射到scope.data定義孤立範圍。本地或全局變量數據顯然不存在。
非常感謝!一個非常明顯的錯誤... – beseder