Sorting 如何在列标题单击上使用自定义排序功能,角度6+;ngx简易表库

Sorting 如何在列标题单击上使用自定义排序功能,角度6+;ngx简易表库,sorting,html-table,angular6,Sorting,Html Table,Angular6,角度版本:6 表格库:ngx简易表格 图书馆参考链接: 使用上面的表库,我想在单击特定列标题/标题时使用自定义排序函数对某些列进行排序。上面提供的stackblitz链接中有一个自定义排序的示例,它使我们能够做到这一点,但需要为每个列放置一个单独的按钮 另外,我使用呈现表格数据,如下所示: <ngx-table [configuration]="configuration" [data]="upcomingBookingsList" [columns]="columns" (event

角度版本:6
表格库: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,并能够使其正常工作!:)