2016-01-14 103 views
0

注意到奇怪的事情,當我命名指令範圍參數dataSource它總是undefinedAngularjs爲什麼我不能指令範圍變量「dataSource」

下面是一個例子:http://plnkr.co/edit/F0wIVUTj9lavVZyFIxKn?p=preview

如果更改dataSource到例如ds一切正常。

問題:爲什麼?

+0

你確定使用'scope:{dataSource:「=」}'而不是'scope:{dataSource:「&」}'。 controllerFunction是函數不是簡單的屬性。如果你將改變它的dataSource將不會被undefined [編輯示例](http://plnkr.co/edit/WlkCPocePTxsDSUKeNl9?p=preview)。 –

回答

3

正如你可以閱讀here,角度歸一化所有屬性,屬性的標準前綴是data-。所以,當你的名字你的屬性data-source,它實際上將被綁定到你的指令,因爲source

你糾正小提琴code

現在可以在你的指令$scope.source進行訪問。

+0

謝謝,解釋。 – Edgar

+1

他是對的。這是正確的解決方案。 – Nirus