找回密码
 立即注册

QQ登录

只需一步,快速开始

Winny

超级版主

130

主题

246

帖子

1536

积分

超级版主

Rank: 8Rank: 8

积分
1536
Winny
超级版主   /  发表于:2023-6-13 14:22  /   查看:1036  /  回复:0
在使用SpreadJS时,遇到大量公式、数据设置时,会出现渲染过慢的问题,本文会详细介绍在使用SpreadJS中场景的一些优化方式。

SpreadJS中可以通过挂起计算、绘制、事件监听等方式提升使用性能,我们可以先通过下边的示例代码做初步了解。
image.png140789488.png
我们可以根据截图中的代码及注释,结合产品API文档全面了解方法的含义。根据需要操作的内容,暂停相关的行为。

其中在暂停和恢复计算,即suspendCalcService()和resumeCalcService()时,查阅API文档,会发现有一个Boolean类型的参数,很多人对于这个参数的设置会存在疑问,不知道是否应该配套使用,来达到最好的性能。接下来主要对这两个API的参数做相关解释。

1. suspendCalcService()方法接收的参数是ignoreDirty,即是否和略脏数据,关于脏数据,可以点击学习指南相关模块了解。整体来说,传true性能好,但是会有一定的风险,推荐传递false。

2. resumeCalcService()方法接收的参数为recalcAll,即是否重新计算全部数据,传递false表示只计算挂起计算之后添加或修改的公式,也就是只运算执行suspendCalcService之后发生变化的公式,否则,计算全部公式。

两者不存在配套使用的关系,如果在暂停计算时,忽略了脏数据,那推荐计算时做全部计算。其余情况,我们自行去设置对应参数即可。
您需要登录后才可以回帖 登录 | 立即注册
返回顶部