找回密码
 立即注册

QQ登录

只需一步,快速开始

Wilson.Zhang

超级版主

17

主题

1195

帖子

1644

积分

超级版主

Rank: 8Rank: 8

积分
1644
Wilson.Zhang
超级版主   /  发表于:2024-9-2 12:12  /   查看:64  /  回复:0
通过数据透视表透视某些字段的数据特征时,也可以对字段排序,支持的排序方式有升序、降序、自定义排序。虽然SpreadJS Designer暂未提供数据透视表字段自定义排序的UI触发方式,但提供了相关的API,我们从API来了解这个功能:https://demo.grapecity.com.cn/spreadjs/help/api/classes/GC.Spread.Pivot.PivotTable-1#sort

一般地,排序时需要指定目标字段和排序方式,如接口PivotTable:sort(filedName, sortInfo)的参数列表所示,filedName即待排序目标字段,sortInfo包含了排序方式等信息。对于升序或降序方式,SpreadJS自然知道如何根据字段值排序,比如对于数字的升序或降序即根据数值大小升降序、对于字符串的升序或降序则根据字母排列顺序升降序等。那么对于自定义排序呢?SpreadJS原本并不知道如何对字段排序,因此需要一并指定自定义排序的策略,比如以字符串的长度为排序条件,如下代码所示:
  1. pivotTable.sort('名称', {
  2.     sortType: GC.Spread.Pivot.SortType.custom,
  3.     customSortCallback: function(fieldItemNameArray) {
  4.         return fieldItemNameArray.sort((a, b) => a.length - b.length);
  5.     }
  6. });
复制代码

遵照PivotTable:sort()的参数定义,在自定义排序时指定排序方式、排序策略等核心要素,SpreadJS便可据此识别排序规则并尝试排序,请参考官网API文档了解更多详情。

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部