找回密码
 立即注册

QQ登录

只需一步,快速开始

云深无迹

注册会员

4

主题

7

帖子

31

积分

注册会员

积分
31
  • 170

    金币

  • 4

    主题

  • 7

    帖子

最新发帖
云深无迹
注册会员   /  发表于:2023-7-14 16:57  /   查看:793  /  回复:4
我在使用集算表时,需要能够知道dataManager对象的数据何时加载完成,因为我在数据未加载完成之前不能让用户导出或下载。我的数据量比较大,大概20万条数据,数据加载过程中我需要增加遮罩,防止用户在数据加载过程中的操作。

4 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-7-14 18:47:25
沙发
您可以参考一下,集算表的学习指南
https://demo.grapecity.com.cn/sp ... tch/overview/purejs
在这里面:
sheet.setDataView(view);这步操作是一个同步操作
您可以在执行他之前打开遮罩层,执行完毕后关闭遮罩层。
回复 使用道具 举报
云深无迹
注册会员   /  发表于:2023-7-14 23:59:17
板凳
您可能误会我的意思了
    我目前使用集算表的方式是在在线设计器中设计好我的表格,添加数据源以及在表样中使用query函数提取指定的数据。
    以上步骤完成后,我将表格导出,并存储到我的数据库中,用户使用时我直接通过接口将表格提供给用户使用。
    但是我在前端拿到表格后,使用fromJson方式打开,目前我只能在fromJson之前打开遮罩,在fromJson之后关闭遮罩,关闭遮罩时集算表中数据源的数据并未加载完成,导致页面上显示的数据不全或缺少。
    所以我想fromJson后得到dataManager对象,尝试在dataManager对象把数据完全加载后,再移除遮罩
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-17 11:41:15
地板
您好,问题已收到,我们这边调研一下,后续有进展我会在本贴中回复您。
SpreadJS 17.0.8 | GcExcel 7.1.1 已发布~
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-17 11:51:05
5#
您好,需要与您确认一下,您导出的这个spread中是否包含集算表的数据?

如果包含,那么直接fromJSON即可,不会出现数据加载不完的情况。

如果不包含,那我的理解就是您导出的是一个模版,在重新导入完毕后,才会去取数据,这个时候使用的方法是下图中的方法:

image.png866612243.png

这是一个异步方法,在sheet.setDataView(view);这句代码后去执行移除遮罩层应该就能实现您的需求了。

如果都不是我上述的情况,还请您再详细说明一下,或者提供一个可以复现这个问题的Demo,我们这边调研一下。
SpreadJS 17.0.8 | GcExcel 7.1.1 已发布~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部