我有一个简单的循环,ng-repeat如下所示:
ng-repeat
<li ng-repeat='task in tasks'> <p> {{task.name}} <button ng-click="removeTask({{task.id}})">remove</button> </li>
控制器中有一个功能$scope.removeTask(taskID)。
$scope.removeTask(taskID)
据我所知,Angular 将首先渲染视图并用{{task.id}}数字替换插值,然后在单击事件时评估ng-click字符串。
{{task.id}}
ng-click
在这种情况下ng-click,完全符合预期,即:ng-click="removeTask(5)".但是......它没有做任何事情。
ng-click="removeTask(5)".
当然,我可以编写代码task.id从$tasks数组甚至 DOM 中获取,但这似乎不像 Angular 的方式。
task.id
$tasks
那么,如何将动态内容添加到循环ng-click内的指令中呢?ng-repeat
代替
<button ng-click="removeTask({{task.id}})">remove</button>
做这个:
<button ng-click="removeTask(task.id)">remove</button>
请看这个小提琴:
http://jsfiddle.net/JSWorld/Hp4W7/34/