2014-06-20 104 views
4

我在將數據對象從ng-repeat傳遞給內部指令時遇到問題。你可以在這裏找到它:JSBin將數據對象傳遞給ng-repeat內部的指令

在Chrome開發人員工具中,我可以看到數據對象沒有定義,但我找不出原因。我將它傳遞給該指令,然後將其綁定到範圍。

我認爲,ng-repeat的每個循環都會構建一個作用域,並對其中的指令進行解析。正確?

另外我想通過我的數據對象的指令,並訪問所有的數據那裏,並在該對象上設置偵聽器。那可能嗎?

回答

4

這是你的指示的代碼片段:

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

+1

非常感謝!一個非常明顯的錯誤... – beseder

1

您與屬性數據現在

scope: { 
    data: "=" 
} 

屬性數據被映射到scope.data定義孤立範圍。本地或全局變量數據顯然不存在。

相關問題