找回密码
 立即注册

QQ登录

只需一步,快速开始

web_chuan
金牌服务用户   /  发表于:2023-5-14 17:36  /   查看:2072  /  回复:7
1金币
image.png13867186.png



image.png544880370.png

这行代码就比较卡, 去掉就好了 加上挂起渲染线程也不行 如何解决
activeSheet.recalcAll(true); // 重新计算


问题.xlsx

4.85 MB, 下载次数: 146

最佳答案

查看完整内容

recalcAll是对整个workbook全部重算,如果公式较多,公式链较长,那么卡顿是正常的。 需要先确认你这边为什么需要重新计算呢,正常情况下,单元格变化后,会自动计算相应的单元格的(引用此单元格的公式)

7 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-5-14 17:36:07
来自 2#
本帖最后由 Richard.Ma 于 2023-5-15 15:23 编辑

recalcAll是对整个workbook全部重算,如果公式较多,公式链较长,那么卡顿是正常的。

需要先确认你这边为什么需要重新计算呢,正常情况下,单元格变化后,会自动计算相应的单元格的(引用此单元格的公式)
回复 使用道具 举报
web_chuan
金牌服务用户   /  发表于:2023-5-15 10:37:29
3#
Richard.Ma 发表于 2023-5-15 10:24
recalcAll是对整个sheet全部重算,如果公式较多,公式链较长,那么卡顿也是正常的。

需要先确认你这边为 ...

之前可能是解决了一个问题,加上的 我忘记了是什么了,感觉之后会有影响,这里有没有什么好的解决办法吗?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-5-15 12:31:11
4#
没有什么办法,大量计算肯定是要时间的。能找到之前的问题的话,可用新发一个帖子,回头看看有没有其他办法解决,如果是产品bug我们也可用提交研发
回复 使用道具 举报
web_chuan
金牌服务用户   /  发表于:2023-5-15 13:24:32
5#
好的,有一个问题也是这个表格的
image.png356989440.png

当我开启增量加载时
image.png372971801.png
就会造成一个问题,我先回显了 setVal 的值, 然后表格还没加载完,等到表格加载完成之后就会把我setVal 的值给覆盖掉
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-5-15 15:30:11
6#
开启增量加载后,你可用看到,你第一张图的红框中,有一个loaded回调,可用在这里再设置值就行
回复 使用道具 举报
web_chuan
金牌服务用户   /  发表于:2023-5-15 15:49:24
7#
Richard.Ma 发表于 2023-5-15 15:30
开启增量加载后,你可用看到,你第一张图的红框中,有一个loaded回调,可用在这里再设置值就行

这个我知道,我想问的是有没有任务队列, 如果文件没有加载完的时候 setVal 方法会等待文件加载完才会回显,不想动现在的逻辑了 太多了
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-5-15 18:13:40
8#
目前没有您提到的此类设置,只能通过上述回调方式
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部