我想访问ng-repeat
的{{1}}内点击的“事件”,但我无法弄清楚如何访问此特定“事件”(“事件”的索引) )在我的控制器内。
以下是相关的HTML:
ng-table
......以及我的控制器的相关部分:
<table ng-table="events.tableParams">
<tr ng-repeat="event in $data">
<td>{{event.state}}</td>
<td>
<ul>
<li ng-repeat="option in event.options">
<a href="" ng-click="events.performAction(option.value, event.id, option.type)">{{option.label}}</a>
</li>
</ul>
</td>
</tr>
</table>
此控制器代码中的 vm.performAction = function(action, id, type) {
if (action === 'cancel') {
event.state = 'canceling';
}
};
显然不正确,但突出显示我正在尝试在HTML中更新的内容。
答案 0 :(得分:0)
如您所述,控制器中的event.state = 'canceling';
不正确。从您的问题来看,当用户点击列表时,您似乎正在尝试更新<td>{{event.state}}</td>
。
<td>{{event.state}}</td>
被绑定为<tr ng-repeat="event in $data">
所指示的$ data,后者又绑定到events.tableParams
。因此,在您的控制器中,您应该更新$scope.events.tableParams.state
。