首页 > 解决方案 > 索引号降序排列

问题描述

我的表包含索引号,当我添加一个新行时,它应该在 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();
  }
}

标签: angularangular-material-5

解决方案


看起来您只是希望反转索引,而不是项目,而不是直接使用reverse和显示i,您可以这样做:

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

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

这样你会得到 ...,2,1,0 而不是 0,1,2...


推荐阅读