我正在使用角度材料表来显示数据。目前,我想加载按状态排序的角材表。我有3个状态-完成,未决和失败。我希望失败记录显示最后一条,而完整和未决记录应该首先显示。
我使用下面的排序功能来做到这一点,但是它不起作用。
this.dataSource = new MatTableDataSource(results['InvoiceHeaders']);
this.dataSource.sortingDataAccessor = (item, property) => {
switch (property) {
case 'status': return item.element.status;
default: return item[property];
// default: return item[property];
}
};
this.dataSource.sort = this.viewsort;
您能帮我做这类样品吗?
谢谢
答案 0 :(得分:1)
一种解决方案可能是创建一个字段“ statusWeight”并为“ status”列分配一个可排序的数值,然后在该任意列上使用默认的物料排序。
相关的 HTML :
<table mat-table [dataSource]="dataSource" matSort matSortActive="statusWeight" matSortDirection='asc' class="mat-elevation-z8">
....
</table>