找回密码
 立即注册

QQ登录

只需一步,快速开始

齐天大猫

初级会员

37

主题

87

帖子

312

积分

初级会员

积分
312
齐天大猫
初级会员   /  发表于:2022-7-6 11:36  /   查看:1194  /  回复:3
1金币
本帖最后由 齐天大猫 于 2022-7-6 16:45 编辑

image.png756367187.png (图1)
image.png478987121.png (图2)


spreadjson中已保存A列排序信息,在与数据绑定后排序条件失效(图2)。


核心代码:
//加载模板
let spread = this.designer.getWorkbook();
let activeSheet = spread.getActiveSheet();
activeSheet.showRow(1, GC.Spread.Sheets.VerticalPosition.top);
spread.fromJSON(template);

//绑定数据
var table = sheet.tables.find(udataTable.rowRange.start, udataTable.colRange.start);
sheet.setColumnCount(udataTable.colRange.start + this.columnCountMax + 100, GC.Spread.Sheets.SheetArea.viewport);//新增
sheet.setRowCount(udataTable.rowRange.start + this.rowCountMax + 100, GC.Spread.Sheets.SheetArea.viewport);
sheet.showRow(0, GC.Spread.Sheets.VerticalPosition.top);//滚动条位置设置
table.bind(tableColumns, "data", tableData);





最佳答案

查看完整内容

绑定后需要重新做筛选和排序操作,因为每次绑定会将之前数据全部清空,理论上每次绑定都可以绑定不同的数据,那么这样的话,之前的筛选内容肯定不一定会适用于新的数据。 所以需要在绑定之后重新做筛选和排序操作。

3 个回复

倒序浏览
最佳答案
最佳答案
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-7-6 11:36:31
来自 4#
绑定后需要重新做筛选和排序操作,因为每次绑定会将之前数据全部清空,理论上每次绑定都可以绑定不同的数据,那么这样的话,之前的筛选内容肯定不一定会适用于新的数据。
所以需要在绑定之后重新做筛选和排序操作。
回复 使用道具 举报
齐天大猫
初级会员   /  发表于:2022-7-6 16:47:26
2#
刚试了setDataSource方式,也是在数据绑定后过滤条件和排序都失效了。
image.png721169738.png
回复 使用道具 举报
齐天大猫
初级会员   /  发表于:2022-7-6 17:17:12
3#
非绑定数据的筛选条件也没有保存到spreadjson中,导致重新打开后仍然是全选状态。
image.png683343810.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部