如何访问ng-table中对象的属性

How to access property of object within ng-table ng-repeat

本文关键字:对象 属性 ng-table 何访问 访问      更新时间:2023-09-26

我想访问在ng-tableng-repeat中点击的'事件',但我不知道如何在我的控制器中访问这个特定的'事件'('事件'的索引)。

下面是相关的HTML:

<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';
  }
};

event.state在这个控制器代码中显然是不正确的,但突出了我试图在我的HTML中更新的内容。

正如您提到的,event.state = 'canceling';在您的控制器中是不正确的。从你的问题来看,当用户单击列表时,看起来好像你正在尝试更新<td>{{event.state}}</td>

<td>{{event.state}}</td>被绑定到$data上,而<tr ng-repeat="event in $data">又被绑定到events.tableParams上。因此,在控制器中,您应该更新$scope.events.tableParams.state .