Cómo obtener el índice de fila en la tabla de materiales angular
<td mat-cell *matCellDef="let row"> <mat-checkbox (click)="$event.stopPropagation()" (change)="$event ? selection.toggle(row) : null;isSomeSelected()" [checked]="selection.isSelected(row)"> </mat-checkbox></td>Puede declarar un índice como este let i = index :
<td mat-cell *matCellDef="let row;let i = index"> <mat-checkbox (click)="$event.stopPropagation()" (change)="$event ? selection.toggle(row) : null;isSomeSelected()" [checked]="selection.isSelected(row)"> </mat-checkbox></td>En su .ts defina el index como una propiedad de RowModel .
Luego puede acceder a él con row.index en la plantilla y el controlador.
.ts :
const ELEMENT_DATA: PeriodicElement[] = [ {position: 1, name: 'item1', index: 0}, {position: 2, name: 'item2', index: 1}, {position: 3, name: 'item3', index: 2}, ]; .html :
<td mat-cell *matCellDef="let row"> <mat-checkbox (click)="$event.stopPropagation()" (change)="$event ? selection.toggle(row) : null;isSomeSelected()" [checked]="selection.isSelected(row)"> </mat-checkbox> <span>{{row.index}}</span> </td>