找回密码
 立即注册

QQ登录

只需一步,快速开始

Fiooona
论坛元老   /  发表于:2020-8-29 23:01  /   查看:2597  /  回复:0
本帖最后由 Fiooona 于 2020-8-29 23:12 编辑

       在V13.2 新版本中对排序功能做了增强。
      一、按组排序
      背景: 在SpreadJS 中有区域分组的功能,如果您有一个要进行组合和汇总的数据列表,则可以创建分级显示。可创建行的分级显示和列的分级显示。 行的分级显示面板在行头的左边; 列的分级显示面板在列头的上面。使用分级显示可以对数据分组并快速显示汇总行或汇总列,或者显示每组的明细数据。在这种场景下,传统的升序或降序排序无法满足需求。
     思路:SpreadJS 在设置排序时,可以使用groupSort函数来设置是否将数据分组排序。参考API
     例如:排序前
image.png542402953.png
全排序,对组及组内数据进行排序:
image.png461463927.png
对分组不排序,仅在组内进行排序:
image.png448804931.png
参考代码:
  1. spread.bind(GC.Spread.Sheets.Events.RangeSorting, function (e, info) {
  2.     info.groupSort = GC.Spread.Sheets.GroupSort.child;
  3. });
复制代码
针对不同情况,可选择设置参数:flat、group、child、full

二、排序忽略隐藏行
在对具有隐藏行的数据进行排序时,SpreadJS 的表现如 Excel 一样,会忽略隐藏行,不将其包括在排序内。
此功能在该版本中已实现,通过在排序时将 ignoreHidden 选项设置为 true 启用此行为,如在 sortRange 方法或在 RangeSorting 事件中设置:
  1. sheet.sortRange(0, 0, 10, 1, true, [{index:0, ascending: true}], {ignoreHidden: false});
  2. sheet.bind(GC.Spread.Sheets.Events.RangeSorting, function (e, info) {
  3.     info.ignoreHidden = true;
  4. });
  5.       
复制代码
V13.1 版本开始支持自定义排序:
SpreadJS自定义排序(中文排序)



组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!

0 个回复

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