pus*_*tel 41 typescript angular-material2 angular
当使用角度材料表时,如何定义索引变量,因为此表中未使用ngFor.
我确实在文档中搜索了它,但索引没有被提到任何位置.
<mat-table #table [dataSource]="dataSource">
<!--- Note that these columns can be defined in any order.
The actual rendered columns are set as a property on the row definition" -->
<!-- Position Column -->
<ng-container matColumnDef="position">
<mat-header-cell *matHeaderCellDef> No. </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.position}} </mat-cell>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef> Name </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.name}} </mat-cell>
</ng-container>
<!-- Weight Column -->
<ng-container matColumnDef="weight">
<mat-header-cell *matHeaderCellDef> Weight </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.weight}} </mat-cell>
</ng-container>
<!-- Symbol Column -->
<ng-container matColumnDef="symbol">
<mat-header-cell *matHeaderCellDef> Symbol </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.symbol}} </mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
</mat-table>
</div>Run Code Online (Sandbox Code Playgroud)
在哪里以及如何为我在此表中使用的数组定义索引变量,以便我可以在表中绑定索引值.
rit*_*taj 83
你index可以let element; let i = index;"像你一样添加*ngFor吗?
<mat-row *matRowDef="let row; columns: displayedColumns; let i = index"></mat-row>
Run Code Online (Sandbox Code Playgroud)
或者像这样:
<ng-container matColumnDef="index">
<mat-header-cell *matHeaderCellDef> Index </mat-header-cell>
<mat-cell *matCellDef="let element; let i = index;">{{i}}</mat-cell>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
ada*_*101 43
对于multiTemplateDataRows将mat-table的属性设置为true的任何人,您都无法使用index.相反,你使用dataIndex或者renderIndex.
<mat-cell *matCellDef="let row; let i = dataIndex;">{{i}}</mat-cell>
Run Code Online (Sandbox Code Playgroud)
请参阅https://github.com/angular/material2/issues/12793
对于那些在使用超过 1 页的分页时保持正确索引的问题的人。当您拥有可编辑元素时,这一点尤其重要,因此您使用routerLink来添加/编辑/删除所选元素。
<ng-container matColumnDef="title">
<mat-header-cell *matHeaderCellDef mat-sort-header>Title</mat-header-cell>
<mat-cell *matCellDef="let book; let i = index;" fxLayoutAlign.lt-md="center center">
<button mat-button [routerLink]="[i + (paginator.pageIndex * paginator.pageSize)]" routerLinkActive="active"</button>
</mat-cell>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
也
<mat-paginator #paginator [pageSize]="5" [pageSizeOptions]="[5, 10, 25, 100]"></mat-paginator>
Run Code Online (Sandbox Code Playgroud)
本质上,i + (paginator.pageIndex * paginator.pageSize)是解决方案,但它从0 开始计数。如果您想从1开始索引,只需将其设为(i+1) + (paginator.pageIndex * paginator.pageSize)。值得注意的是,您确实需要#paginator和[pageSize]="VALUE"。
如果有人使用<mat-paginator ../>,那么 index 可以解释如下
<mat-cell *matCellDef="let element; index as i"> {{paginator.pageSize * paginator.pageIndex + i + 1}}</mat-cell>
Run Code Online (Sandbox Code Playgroud)
从角5,你可以别名index局部变量i使用index as i
<ng-container matColumnDef="rowIndex">
<mat-header-cell *matHeaderCellDef> Index </mat-header-cell>
<mat-cell *matCellDef="let element;index as i;"> {{ i }} </mat-cell>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31896 次 |
| 最近记录: |