Joestar.Xu
发表于 2024-9-12 14:51:11
您好,SpreadJS的每个大版本和中版本都有一定程度上的性能优化。
关于您目前遇到的性能问题,我们还在调研。由于代码量较大,所以需要较长的时间调研,后续有进展我会在本帖中回复您。
wutao@digiwin
发表于 2024-9-12 16:22:58
Joestar.Xu 发表于 2024-9-12 14:51
您好,SpreadJS的每个大版本和中版本都有一定程度上的性能优化。
关于您目前遇到的性能问题,我们还在调 ...
您好,请问还需要多久呢,我这demo还是以前问您内存过大的那个demo,没啥改动
Joestar.Xu
发表于 2024-9-12 16:26:03
性能问题是相对较难排查的问题,就目前来看暂时没有预计修复的时间,我后续会持续和开发跟进,一有进展我会马上回复您。
wutao@digiwin
发表于 2024-9-14 14:36:15
Joestar.Xu 发表于 2024-9-13 11:16
您好,可以先设置:
sheet.options.allowCellOverflow = false;
好的,我这边调研看看,谢谢您了,麻烦您那边再看看哈,我个人觉得计算逻辑这一块可能还需要在进行优化
Joestar.Xu
发表于 2024-9-14 14:40:27
:mj72:
wutao@digiwin
发表于 2024-9-14 17:34:07
Joestar.Xu 发表于 2024-9-14 14:40
您好,我刚刚测试了一下,把您那demo代码拷贝到两个版本中发现16版本性能还是比17版本性能快啊,快个7秒左右
Joestar.Xu
发表于 2024-9-18 10:06:54
您好,就目前的情况来看,性能的差异是合理的,SpreadJS在加入新功能的时候需要注入一些插槽,从理论上来说这些插槽不会生效,仅仅是执行一下就返回了。
但是在您目前的用例中存在2W*38的autoMerge区域,这个autoMerge区域会导致整个Sheet在运算时判断是否需要merge,也就需要依次执行getText->getFormatter->getActualStyle。
这样一来就会额外执行很多次插槽方法,即使插槽为空方法,但仍然会额外花费时间,在性能较差的机器上时间会更长。
wutao@digiwin
发表于 2024-9-18 10:36:10
Joestar.Xu 发表于 2024-9-18 10:06
您好,就目前的情况来看,性能的差异是合理的,SpreadJS在加入新功能的时候需要注入一些插槽,从理论上来说 ...
您好,是的,我们这边有很多功能需要用到autoMerge,请问还有其他优化方法吗
Joestar.Xu
发表于 2024-9-18 12:28:31
wutao@digiwin 发表于 2024-9-18 10:36
您好,是的,我们这边有很多功能需要用到autoMerge,请问还有其他优化方法吗
根据您目前的用例的情况来看,不建议您针对整个表设置autoMerge,而是针对部分需要autoMerge的列设置autoMerge。
wutao@digiwin
发表于 2024-9-19 10:29:09
Joestar.Xu 发表于 2024-9-18 12:28
根据您目前的用例的情况来看,不建议您针对整个表设置autoMerge,而是针对部分需要autoMerge的列设置auto ...
您好,我们这边的列是动态生成的,所以并不知道哪些列需要设置autoMerge,所以我们是针对整个表设置autoMerge