找回密码
 立即注册

QQ登录

只需一步,快速开始

高阳0910

初级会员

38

主题

142

帖子

476

积分

初级会员

积分
476
高阳0910
初级会员   /  发表于:2024-6-12 11:26  /   查看:1588  /  回复:11
本帖最后由 高阳0910 于 2024-6-12 13:56 编辑

我通过url 下载下来的文件流,使用excelIo.open()。会提示文件格式错。但是 我看能转出json.
注释的部分 是可以正常下载的。



fetch('https://test.rsmchina.com.cn/HZWebApiV2/TemplatePath/96a2c86b-7f90-4a97-ba3d-12ec490a9ab1/templateFile.xlsx', {
            method: 'GET'
          })
            .then(response => {
              if (!response.ok) {
                throw new Error('Network response was not ok');
              }
              return response.blob(); // 将响应转换为Blob对象
            })
            .then(blob => {
              this.$refs.confirmationRefs.getDownload(blob)
              // const downloadUrl = window.URL.createObjectURL(blob);
              // const link = document.createElement('a');
              // link.href = downloadUrl;
              // link.download = 'templateFile.xlsx'; // 设置下载文件的名称
              // document.body.appendChild(link);
              // link.click();
              // document.body.removeChild(link);
              // window.URL.revokeObjectURL(downloadUrl);
            })
            .catch(error => {
              console.error('There was a problem with the fetch operation:', error);
          });


getDownload (excelBlob) {
        const excelIo = new ExcelIo.IO()
        excelIo.open(excelBlob, function (json) {
          console.log(json)
          this.spread.fromJSON(json);
        }, function (e) {
          // process error
          console.log(e)
        }, {});
      },






11 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-12 17:47:00
沙发
您好,我这边在17.0.10中测试了一下,使用ExcelIO导入不会出现您说的文件格式错误的问题。

image.png158705443.png

image.png788966369.png
回复 使用道具 举报
高阳0910
初级会员   /  发表于:2024-6-12 17:58:45
板凳
Joestar.Xu 发表于 2024-6-12 17:47
您好,我这边在17.0.10中测试了一下,使用ExcelIO导入不会出现您说的文件格式错误的问题。

那我按你的方式在写一下看看。我是17.0.7
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-12 18:15:32
地板
好的,V17建议您使用IO包来进行导入,ExcelIO这个包在后续的版本中会废弃掉哈。

参考:https://demo.grapecity.com.cn/sp ... mat/overview/purejs
回复 使用道具 举报
高阳0910
初级会员   /  发表于:2024-6-13 09:36:38
5#
本帖最后由 高阳0910 于 2024-6-13 09:38 编辑
Joestar.Xu 发表于 2024-6-12 18:15
好的,V17建议您使用IO包来进行导入,ExcelIO这个包在后续的版本中会废弃掉哈。

参考:https://demo.gra ...

我改了一下 。用new ExcelIo.IO()  可以 需要把this.spread 换一下this指向。 const excelIo = new ExcelIo.IO()
        let that = this
        this.spread.resumePaint()
        excelIo.open(excelBlob, function (json) {
          let speradJson = json
          that.spread.fromJSON(speradJson);
        }, function (e) {
          // process error
          console.log(e)
        }, {});

但是 加载出来的内容跟下载下来的内容 不符。是需要配置什么参数 吗? image.png845705261.png image.png140849913.png
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-13 11:26:07
6#
您好,您图中的二维码和函证编号字样是这个Sheet的页眉,正常情况下是不会显示的,仅会在打印预览时显示:

image.png961902160.png
回复 使用道具 举报
高阳0910
初级会员   /  发表于:2024-6-13 11:38:11
7#
Joestar.Xu 发表于 2024-6-13 11:26
您好,您图中的二维码和函证编号字样是这个Sheet的页眉,正常情况下是不会显示的,仅会在打印预览时显示:
...

不能跟office的excel 一样 吗?不用再打印的时候就展示出来
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-13 15:43:26
8#
您好,SpreadJS目前还不支持PageLayout视图,仅支持Normal,所以无法直接和Excel显示的一模一样:

image.png424091185.png
回复 使用道具 举报
高阳0910
初级会员   /  发表于:2024-6-13 15:54:38
9#
Joestar.Xu 发表于 2024-6-13 15:43
您好,SpreadJS目前还不支持PageLayout视图,仅支持Normal,所以无法直接和Excel显示的一模一样:

那没有其他的办法显示页眉和页脚吗?
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-13 17:46:14
10#
您好,原生上没有更好的方案了。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部