索引编号按降序排列

时间:2019-03-04 16:18:16

标签: angular angular-material-5

我的表包含索引号,当我添加新行时,它应该在2,1,0中显示给我,我需要在顶部索引号2中显示当前值。根据我的代码,它的工作值为0,1,2。 但是我需要2,1,0。

这是我的html文件 `

<mat-table #table [dataSource]="dataSource"  *ngFor="let field of fieldArray | reverse; let i = index " [attr.data-index]="i" >                 
<ng-container matColumnDef="SrNo">
<mat-header-cell *matHeaderCellDef> No. </mat-header-cell>
<mat-cell *matCellDef="let element" >                 
<div>{{i}}</div>
</mat-cell>
</ng-container>

这是我的管道代码

import {Pipe, PipeTransform} from '@angular/core';
@Pipe({
  name: 'reverse',
  pure: false
})
export class ReversePipe implements PipeTransform {

transform (values) {
    return values.reverse();
  }
}

2 个答案:

答案 0 :(得分:0)

似乎您只希望索引被反转,而不是项目,而不是使用reverse并直接显示i,您可以这样做:

[attr.data-index]="fieldArray.length - i"

<div>{{fieldArray.length - i}}</div>

这样,您将获得...,2,1,0而不是0,1,2 ...

答案 1 :(得分:0)

您可以直接对不需要使用管道的数组“ fieldArray”进行排序。

fieldArray.sort((a, b) => a < b? 1 : 0);