找回密码
 立即注册

QQ登录

只需一步,快速开始

Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-8-25 17:58:19
10#
中达安 发表于 2023-8-25 17:39
导入excel只能需要用到 fromJSON
可是这样写会报错:Uncaught (in promise) TypeError: Cannot read pr ...

您好,这边通过下面的代码进行测试,并没有报错
  1. <div>
  2.     <input id="selectedFile" type="file" name="files[]" accept=".sjs, .xlsx, .xlsm, .ssjson, .json, .csv"/>
  3.     <input type="button" id="loadExcel" value="导入excel" class="button">

  4. </div>
复制代码
  1.   var excelIO = new GC.Spread.Excel.IO();
  2.         $("#loadExcel").click(function () {
  3.             var file = document.querySelector('#selectedFile').files[0];
  4.             if (!file) {
  5.                 return;
  6.             }
  7.             excelIO.open(
  8.                 file,
  9.                 function (json) {

  10.                     var ss =  new GC.Spread.Sheets.Workbook();
  11.                     ss.fromJSON(json);
  12.                     console.log(ss)
  13.                 },
  14.                 function (e) {
  15.                     console.log(e);
  16.                 },
  17.             );
  18.         });
复制代码
是可以正常打印ss的
如下图所示:
image.png911387023.png
您可以将您的excel文件导入到附件中,看是否还报错,如果报错的话,建议您把您的excel上传上来。

excelIO导入.html

3.13 KB, 下载次数: 60

回复 使用道具 举报
中达安
金牌服务用户   /  发表于:2023-8-28 09:14:26
11#
本帖最后由 中达安 于 2023-8-28 10:17 编辑
Ellia.Duan 发表于 2023-8-25 17:58
您好,这边通过下面的代码进行测试,并没有报错
是可以正常打印ss的
如下图所示:

因为我需要监听 ss.fromJSON 之后的 loaded 事件;加载完成之后开始处理业务逻辑
也就是将你附件中导入部分代码改为:

excelIO.open(
    file,
    function (json) {
        window.ss =  new GC.Spread.Sheets.Workbook()      
        window.ss.fromJSON(json, {
            incrementalLoading: {
                loaded: () => {
                    console.log("loaded: TODO")
                },
            },
        });
    },
    function (e) {
        console.log(e);
    },
);

实际导入是成功了;但是出现了个error,loaded 回调没有被触发。
image.png510015258.png
如果 GC.Spread.Sheets.Workbook 有入参dom节点则正常




回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-8-28 10:29:03
12#
中达安 发表于 2023-8-28 09:14
因为我需要监听 ss.fromJSON 之后的 loaded 事件;加载完成之后开始处理业务逻辑。
也就是将你附件中导 ...

您好,此问题已复现,这边需要调研一下。
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部