2014-02-21 49 views
2

我有一个隔离范围的指令。该指令的模板对元素有一个ng重复。在相同的元素,我有:Angular指令 - 隔离范围(&)无法从ng-repeat传递项目

ng-click="selection(item)" 

在我的指令范围,我有:

scope: { 
    selection: '&' 
} 

的指令属性的样子:

selection="onSelection(item)" 

控制器是这样的:

$scope.onSelection = function(item) { 

} 

正在调用该函数,但该项目未定义。我相信这个项目在那里,因为我还在同样的工作正常的元素上再次使用ng-class =“getClass(item)”。

任何有用的指针,将不胜感激。

干杯。

+2

你可以尝试NG点击= “选择({ '项目':项目})” – Chandermani

+0

感谢那些工作。我不知道为什么有必要将我的域对象封装在另一个对象中,语法有点冗长。 – user3034151

回答

1

那么事实证明了正确的语法是

ng-click="selection({'item':item})"