Sorting 如何在列标题单击上使用自定义排序功能,角度6+;ngx简易表库
角度版本:6Sorting 如何在列标题单击上使用自定义排序功能,角度6+;ngx简易表库,sorting,html-table,angular6,Sorting,Html Table,Angular6,角度版本:6 表格库:ngx简易表格 图书馆参考链接: 使用上面的表库,我想在单击特定列标题/标题时使用自定义排序函数对某些列进行排序。上面提供的stackblitz链接中有一个自定义排序的示例,它使我们能够做到这一点,但需要为每个列放置一个单独的按钮 另外,我使用呈现表格数据,如下所示: <ngx-table [configuration]="configuration" [data]="upcomingBookingsList" [columns]="columns" (event
表格库:ngx简易表格
图书馆参考链接:
使用上面的表库,我想在单击特定列标题/标题时使用自定义排序函数对某些列进行排序。上面提供的stackblitz链接中有一个自定义排序的示例,它使我们能够做到这一点,但需要为每个列放置一个单独的按钮 另外,我使用
呈现表格数据,如下所示:
<ngx-table [configuration]="configuration" [data]="upcomingBookingsList" [columns]="columns" (event)="eventEmitted($event)">
<ng-template let-row>
<td>
<a class="list-id-styles" (click)="openBookingDetailsModal(row['id'])">{{row.id}}</a>
</td>
<td>
{{row.webStatus}}
</td>
<td>
{{row.guestDOB }}
</td>
<td>
{{row.startDateNTime }}
</td>
<td>
{{row.updateDate }}
</td>
</ng-template>
</ngx-table>
{{row.id}}
{{row.webStatus}}
{{row.guestDOB}}
{{row.startdatetime}
{{row.updateDate}}
如果能在这方面得到一些帮助就太好了 我是这个库的创建者。 解决方法非常简单。请检查描述此示例的链接 您需要在
eventemissed
方法中检查单击了哪个标题键。然后调用自定义排序方法,在本例中为sortByLastName
eventemissed($event){
如果($event.event=='onOrder'){
如果($event.value.key=='name'){
this.sortByLastName($event.value.order=='asc');
}
}
private-sortByLastName(asc:boolean):void{
this.data=[…this.data.sort((a,b)=>{
const nameA=a.name.toLowerCase().split(“”)[1];
const nameB=b.name.toLowerCase().split(“”)[1];
if(nameA名称B){
返回asc?1:-1;
}
返回0;
})];
}
谢谢@ssuperczynski,我当时正在使用库的版本5,因此没有使用此解决方案。我将其升级到版本6.0,并能够使其正常工作!:)