找回密码
 立即注册

QQ登录

只需一步,快速开始

[已处理] 公式失效问题 关闭

水牛
初级会员   /  发表于:2024-5-16 17:36  /   查看:2129  /  回复:7
2金币
本帖最后由 Richard.Huang 于 2024-5-22 14:17 编辑

产品:SpreadJS
版本:V16.1.4

前端绑定了6000条数据,SpreadJS在前端写入数值速度发现比较慢,所以研究发现sjs里的sharedStrings.json是绑定文件,我们将绑定的内容在后台替换成了数值再传给前台,发现公式失效了,请问在后端把文字替换为啥引用的公式就失效了?
image.png88552245.png

最佳答案

查看完整内容

您好, 1、写入数值时请使用setValue接口而不是setText接口。 2、批量写入数值时请关闭绘制、事件和计算引擎,待写入完毕再开启。 如: sheet.suspendPaint(); sheet.suspendCalcService(); sheet.suspendEvent(); sheet.resumeEvent(); sheet.resumeCalcService(); sheet.resumePaint(); 更多请参考:https://demo.grapecity.com.cn/spreadjs/help/docs/faqs/performance/performnace-optimize-project2#%E ...

7 个回复

正序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-2 11:24:34
8#
您好,由于本帖较长时间没有回复,本帖先做结贴处理了,后续如您有其他问题,欢迎您开新帖提问。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-31 09:23:51
7#
您好,请问您的问题是否已经解决,如果仍未解决,欢迎继续回帖,我们来协助调研。
回复 使用道具 举报
水牛
初级会员   /  发表于:2024-5-21 10:24:48
5#
Joestar.Xu 发表于 2024-5-17 12:29
您好,那您这边具体是怎么赋值的呢?

sheet.setText(searchresult.foundRowIndex, searchresult.foundColumnIndex, text);
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-17 12:29:19
4#
您好,那您这边具体是怎么赋值的呢?
回复 使用道具 举报
水牛
初级会员   /  发表于:2024-5-17 09:13:28
3#
Joestar.Xu 发表于 2024-5-17 09:07
您好,SJS类型文件是SpreadJS导入导出的中间产物,我们不推荐也不支持以任何方式修改SJS类型文件中的内容, ...

如果使用数据赋值,6000个赋值速度发现比较慢,打开速度会3分钟
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-17 09:07:28
2#
您好,SJS类型文件是SpreadJS导入导出的中间产物,我们不推荐也不支持以任何方式修改SJS类型文件中的内容,也无法提供修改文件后的支持,所有的修改操作请务必使用公开的API来实现。
回复 使用道具 举报
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-16 17:36:41
来自 6#
您好,

1、写入数值时请使用setValue接口而不是setText接口。

2、批量写入数值时请关闭绘制、事件和计算引擎,待写入完毕再开启。

如:

sheet.suspendPaint();
sheet.suspendCalcService();
sheet.suspendEvent();

sheet.resumeEvent();
sheet.resumeCalcService();
sheet.resumePaint();

更多请参考:https://demo.grapecity.com.cn/sp ... C%E6%80%A7%E8%83%BD

3、如果插入的数据有规律,也可以使用setArray方法。https://demo.grapecity.com.cn/sp ... .Worksheet#setarray
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部