找回密码
 立即注册

QQ登录

只需一步,快速开始

simon1043

初级会员

9

主题

40

帖子

345

积分

初级会员

积分
345
simon1043
初级会员   /  发表于:2018-2-9 10:29  /   查看:4116  /  回复:9
setFormatter可不可以直接设置一行或者一列的格式
我的sheet页大概90*500这么大 如果给每个单元格setFormatter的话  性能的话有很大的影响 得30s多
有什么优化方案么
image.png619021606.png

9 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-2-9 17:49:12
沙发
您可以设置之前使用suspendPaint来暂停重绘,全部设置完后用resumePaint统一进行重绘,这样只会重绘1次,就不会影响性能了
参考:
http://demo.gcpowertools.com.cn/ ... #/demos/spreadPaint
回复 使用道具 举报
simon1043
初级会员   /  发表于:2018-2-11 14:21:40
板凳
就是已经设置了suspendPaint和resumePaint了 都30多s
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-2-11 16:09:40
地板
您提供一下,您的页面序列化的ssjson,我这边试一下
回复 使用道具 举报
simon1043
初级会员   /  发表于:2018-2-22 10:05:23
5#
这是ssjson

ssjson.rar

84.19 KB, 下载次数: 136

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-2-23 08:57:47
6#

spread.suspendCalcService()

spread.resumeCalcService()
回复 使用道具 举报
simon1043
初级会员   /  发表于:2018-2-23 16:40:29
7#
image.png32659300.png image.png456025695.png 我在创建spreadjs开始和结束有加suspendCalcService和resumeCalcService
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-2-23 19:20:56
8#
您好,我这边用了您的demo进行测试,加上spread.suspendPaint();spread.suspendCalcService();与spread.resumeCalcService();spread.resumePaint();只需要1秒的时间,您看一下是不是其他原因造成的。
测试代码如下:
                spread.fromJSON(test);//加载您的ssjson
                var sheet = spread.getActiveSheet();
                spread.suspendPaint();
                spread.suspendCalcService();
                for(var i=0;i<sheet.getRowCount();i++){
                        for(var j=0;j<sheet.getColumnCount();j++){
                                sheet.setFormatter(i,j,'_ * #,##0_ ;_ * -#,##0_ ;_ * ""-""_ ;_ @_ ');
                        }
                }
                spread.resumeCalcService();
                spread.resumePaint();
回复 使用道具 举报
东方歆
注册会员   /  发表于:2023-2-10 10:50:48
9#
用这种方式解决了,感谢大佬!
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-2-10 13:43:02
10#
东方歆 发表于 2023-2-10 10:50
用这种方式解决了,感谢大佬!

您的问题解决了就好。有问题欢迎随时沟通。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部