找回密码
 立即注册

QQ登录

只需一步,快速开始

wutao@digiwin
金牌服务用户   /  发表于:2023-8-7 11:10  /   查看:776  /  回复:3
本帖最后由 Richard.Huang 于 2023-8-7 14:18 编辑

spredJs 有没有内部加载完成之后的回调方法,移动端,在大数量的时候需要获取到回调方法关闭loading,目前在接口返回时 image.png344360656.png 当这个返回后才能渲染完成,需要有一个回调方法

3 个回复

倒序浏览
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2023-8-7 12:04:20
沙发
本帖最后由 Richard.Huang 于 2023-8-7 12:26 编辑

您好,我想您可以通过spread.fromJSON()方法来实现您的需求:
您可以参考这篇帖子实现loading页面覆盖的原理是实现您的回调:https://gcdn.grapecity.com.cn/showtopic-98339-1-1.html
核心代码:

spread.fromJSON(workbookObj, {
  incrementalLoading: {
    loading: function (progress) {
      console.log("正在加载");
    },
    loaded: function () {
      console.log("加载完成");
    },
  },
});


也可以用spread.import()方法来实现加载成功和失败的函数回调,您可以查看API:https://demo.grapecity.com.cn/sp ... ets.Workbook#import
核心代码:

document.getElementById('loadFile').onclick = function () {
    const startTime = new Date().getTime(); // 记录导入开始时间
    var file = document.getElementById("fileDemo").files[0];
    spread.import(file, function () {
        const endTime = new Date().getTime(); // 记录导入结束时间
        const timeElapsed = (endTime - startTime) / 1000; // 计算时间差(以秒为单位)
        alert(`导入文件 "${file.name}" 耗时:${timeElapsed}秒`);
    }, function (e) {
        console.log(e); //  失败回调函数
    }, {
        openMode: 0; // 加载模式,枚举值,0为普通,1为懒加载,2为增量加载
    });
}

回复 使用道具 举报
wutao@digiwin
金牌服务用户   /  发表于:2023-8-7 14:17:11
板凳
Richard.Huang 发表于 2023-8-7 12:04
您好,我想您可以通过spread.fromJSON()方法来实现您的需求:
您可以参考这篇帖子实现loading页面覆盖的原 ...

这两个都无法解决我的问题,表格数据不是通过fromJSON来实现的,代码中引入 会workbookObj报错,我遇到的问题是,在加载如图的post请求的时候loading会卡住,等到页面渲染完成 loading是会正常消失的,这里大数量的时候大概是2万条数据会出现这样的情况
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2023-8-7 15:02:14
地板
您好,请问您的表格数据是通过什么方式来实现的?然后您希望加载完成后进行post请求的目的是什么,如果可以的话,请详细描述后给予一份供我们测试的Demo以及数据方便我们更好的为您解决问题
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部