Угловой материал - получение индекса строки в таблице данных - PullRequest
0 голосов
/ 02 мая 2018

Я использую компонент MatTable из Угловой материал для создания динамической таблицы данных.

Мне нужно получить текущую позицию строки. Я могу легко получить строку, по которой щелкнул пользователь, но я не могу узнать ее текущую позицию в списке (которая зависит от сортировки / фильтрации / разбиения на страницы).

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

в вашем mat-cell вы можете получить индекс как *ngFor как показано ниже

<mat-cell *matCellDef="let element;let i = index;">
        {{ i }}
</mat-cell>

Обновление из Angular 5 использовать также index as i

<ng-container matColumnDef="rowIndex">
  <th mat-header-cell *matHeaderCellDef> Index </th>
  <td mat-cell *matCellDef="let element;index as i;"> {{ i }} </td>
</ng-container>
  • index: число: индекс текущего элемента в итерируемом.
  • first: boolean: True, когда элемент является первым элементом в итерируемом.
  • last: boolean: True, когда элемент является последним элементом в повторяемом элементе.
  • even: boolean: True, когда элемент имеет четный индекс в итерируемом.
  • odd: boolean: True, если элемент имеет нечетный индекс в итерируемом.
0 голосов
/ 02 мая 2018

Вы используете angularjs или angular2? ваш заголовок говорит angularjs, а ваши теги и сообщение говорят иначе.

angular2

<div *ngFor="item of items; i = index">
  <span click(item, i)>
</div>

angularjs

<div ng-repeat="item of items">
  <span click(item, $index)>
</div>

изменить: я видел ваши комментарии, этот ответ вам помочь? Есть ли свойство индекса с таблицей данных CDK или таблицей данных Material2?

...