Roj*_*ndo 4 angular-material angular angular-material-5 angular-cdk
我有角材料数据源。角材料版本是 ^5.0.3 排序工作。但是,对于某些列,它的排序不正确。数字和文本在哪里。例如,排序结果如“XXX”、“1”、“1tesxt”、“1”、“OPD”、“OXD”、“12”。
<mat-table #table [dataSource]="dataSource" matSort >
<ng-container matColumnDef="model">
<mat-header-cell *matHeaderCellDef mat-sort-header> Model </mat-header-cell>
<mat-cell *matCellDef="let element"> {{element.model}} </mat-cell>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
感谢你的帮助。
这是因为标准sortingDataAccessor投下数串号,并在Javascript1 > 'one'和1 < 'one'两个计算结果为false。
作为一种解决方法,您可以在sortingDataAccessor没有演员的情况下定义自己的:
ngAfterViewInit() {
this.dataSource.sort = this.sort;
this.dataSource.sortingDataAccessor = (data, attribute) => data[attribute];
}
Run Code Online (Sandbox Code Playgroud)
解决方法是从这个Github 问题复制的。
| 归档时间: |
|
| 查看次数: |
6498 次 |
| 最近记录: |