【问题标题】:How to sort a particular column of prime-ng datatable using custom sorting algorithm如何使用自定义排序算法对 prime-ng 数据表的特定列进行排序
【发布时间】:2019-09-28 01:47:14
【问题描述】:

我正在做一个使用 prime-ng 的 p-datatable 的旧项目。该表目前在一列上具有默认排序。现在我需要在另一列上实现排序,但这必须是基于自定义逻辑的排序。

我尝试搜索实现该功能的方法,但发现p-datatable 仅在表级别而不在列级别提供此功能,如下所示:

<p-dataTable [value]="dataList" (onSort)="sortColumn()>

另外,我找不到p-datatable 的官方文档页面。显然它已被 Turbotable 弃用。

有人可以指导我在保持原始列排序不变的同时实现新列排序的方法。

编辑:如果有人有原始 p-datatable 文档的链接,请分享。

谢谢

【问题讨论】:

标签: angular primeng primeng-datatable columnsorting


【解决方案1】:

你可以这样做

<p-column field="abc"  header="ABC" [sortable]="true" sortable="custom" (sortFunction)="buildSort($event)">

您的排序逻辑将进入 buildSort 函数。 event 对象将包含列和排序值的详细信息。

【讨论】:

  • 虽然这可能会有所帮助,但它会隐藏列标题中的默认排序箭头。知道为什么吗?
  • 不应该。请发布带有p-dataTablep-column 标签的代码。
  • 它不会在单模式下隐藏它们,但在多模式下会。现在,我可以忍受。
  • 在我的 buildSort() 函数中,我可以像在常规数组排序中那样返回 1, -1 还是需要重新排序整个数组?
  • 我尝试重新排序列表,但重新排序的列表未显示在 UI 上。视图继续显示原始顺序。
猜你喜欢
  • 2019-12-02
  • 2016-10-28
  • 2017-01-16
  • 1970-01-01
  • 2020-03-29
  • 2017-07-05
  • 1970-01-01
  • 1970-01-01
  • 2016-10-17
相关资源
最近更新 更多