请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

hongshanshan SpreadJS 开发认证
高级会员   /  发表于:2021-9-4 19:07  /   查看:1834  /  回复:7


因为数据是动态加载的,假设第一次是50条,新增行数据后,执行了下面的合并方法,
第二次执行也是50条(数据是不一致),先把之前的50条删除,再新增50条,也要能执行下面的合并方法,目前时报错的,






7 个回复

倒序浏览
hongshanshanSpreadJS 开发认证
高级会员   /  发表于:2021-9-6 15:35:25
推荐
Derrick.Jiao 发表于 2021-9-6 14:48
请问您是如何删除数据的呢?建议您尝试在删除数据后顺道将合并一同清除,
sheet.autoMerge(range, GC.Sp ...

可以了,需要在删除行之前先把合并区域去掉,再删除
回复 使用道具 举报
hongshanshanSpreadJS 开发认证
高级会员   /  发表于:2021-9-4 19:07:50
沙发

回复 使用道具 举报
hongshanshanSpreadJS 开发认证
高级会员   /  发表于:2021-9-4 19:08:14
板凳
image.png227378234.png
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-9-6 11:29:00
地板
您好,出现这个问题可能是存在多次合并的操作,比如渲染时进行合并了,后面二次请求数据了,合并的数据变了,又执行了合并方法。

您可以再次请求数据之后,先用
sheet.autoMerge(range, GC.Spread.Sheets.AutoMerge.AutoMergeDirection.none);清除上一次的合并
之后再重新设置一下自动合并





回复 使用道具 举报
hongshanshanSpreadJS 开发认证
高级会员   /  发表于:2021-9-6 14:22:40
5#
好像不行呀,还是报一样的错
var rangeOne = new GC.Spread.Sheets.Range(2, 0, dataListSize, 1);
                                        targetsheet.autoMerge(rangeOne, GC.Spread.Sheets.AutoMerge.AutoMergeDirection.none);
                                        targetsheet.autoMerge(rangeOne, GC.Spread.Sheets.AutoMerge.AutoMergeDirection.column, GC.Spread.Sheets.AutoMerge.AutoMergeMode.free);
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-9-6 14:48:34
6#
hongshanshan 发表于 2021-9-6 14:22
好像不行呀,还是报一样的错
var rangeOne = new GC.Spread.Sheets.Range(2, 0, dataListSize, 1);
             ...

请问您是如何删除数据的呢?建议您尝试在删除数据后顺道将合并一同清除,
sheet.autoMerge(range, GC.Spread.Sheets.AutoMerge.AutoMergeDirection.none);

清除数据和合并后再加载数据和进行单元格合并。若仍未解决您的问题,建议您在附件的demo模拟几条数据以及您的业务场景,这边为您调研一下

online.html

1.43 KB, 下载次数: 48

回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-9-6 16:01:38
8#
hongshanshan 发表于 2021-9-6 15:35
可以了,需要在删除行之前先把合并区域去掉,再删除

解决了就好,有新问题欢迎开新帖交流~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部