找回密码
 立即注册

QQ登录

只需一步,快速开始

palalpapa

注册会员

7

主题

19

帖子

70

积分

注册会员

积分
70
palalpapa
注册会员   /  发表于:2023-8-3 16:31  /   查看:4898  /  回复:18
1金币
本帖最后由 Joestar.Xu 于 2023-8-24 11:23 编辑

集算表导出报Incorrect file format.   

就算没有报错,导出来也是空的excel 。类似这样
image.png481524962.png
导出代码
  1.     download(){
  2.       let _this = this;
  3.       let excelIo = new spreadExcel.IO();
  4.       let fileName = `excel_${new Date().getTime()}.xlsx`;
  5.       let json = this.spread.toJSON();
  6.       excelIo.save(
  7.           json,
  8.           function (blob) {
  9.             saveAs(blob, fileName);
  10.           },
  11.           function (e) {
  12.             _this.$message.error(e.errorMessage);
  13.           },
  14.           {
  15.             includeBindingSource: true,
  16.           }
  17.       );
  18.     }
复制代码
附件上传报错 image.png764524535.png

test_spreadJs.zip

274.9 KB, 阅读权限: 150, 下载次数: 1

demo

最佳答案

查看完整内容

您好,请尝试以下代码: download() { let _this = this; let excelIo = new spreadExcel.IO(); let fileName = `excel_${new Date().getTime()}.xlsx`; let json = this.spread.toJSON({ includeBindingSource: true, saveAsView: true, }); excelIo.save( json, function (blob) { saveAs(blob, fileName); }, ...

18 个回复

倒序浏览
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-3 16:31:20
来自 7#
您好,请尝试以下代码:

download() {
      let _this = this;
      let excelIo = new spreadExcel.IO();
      let fileName = `excel_${new Date().getTime()}.xlsx`;
      let json = this.spread.toJSON({
        includeBindingSource: true,
        saveAsView: true,
      });
      excelIo.save(
        json,
        function (blob) {
          saveAs(blob, fileName);
        },
        function (e) {
          console.log(e);
          _this.$message.error(e.errorMessage);
        }
      );
    },

image.png899996948.png
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-3 17:33:26
2#
您好,您将您的Demo发到Joestar.Xu@grapecity.com后我们这边复现调研一下。
回复 使用道具 举报
palalpapa
注册会员   /  发表于:2023-8-4 09:38:39
3#
Joestar.Xu 发表于 2023-8-3 17:33
您好,您将您的Demo发到后我们这边复现调研一下。

你好,demo已上传,需要install一下
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-4 10:48:56
4#
您好,这是因为你没有引入fileSaver这个包。

saveAs函数是这个包提供的,引入这个包就可以正常导出了。

如:在index.html中添加    <script src="https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/spread/source/js/FileSaver.js"
        type="text/javascript"></script>


image.png231184996.png
回复 使用道具 举报
palalpapa
注册会员   /  发表于:2023-8-4 11:16:52
5#
加入之后导出来是这样的,能看下是什么问题吗
image.png859905090.png
回复 使用道具 举报
palalpapa
注册会员   /  发表于:2023-8-4 11:18:29
6#
Joestar.Xu 发表于 2023-8-4 10:48
您好,这是因为你没有引入fileSaver这个包。

saveAs函数是这个包提供的,引入这个包就可以正常导出了。
...

你好,加入之后导出来是这样的,能看下是什么问题吗
图片在上面的回复
回复 使用道具 举报
palalpapa
注册会员   /  发表于:2023-8-4 14:56:20
8#
Joestar.Xu 发表于 2023-8-3 16:31
您好,请尝试以下代码:

download() {

还有一个问题,就是我设置了表头的高度      sheet.setDefaultRowHeight(80,GC.Spread.Sheets.SheetArea.colHeader),
导出后的excel高度就失效了,这么是怎么回事
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-8-4 15:40:13
9#
palalpapa 发表于 2023-8-4 14:56
还有一个问题,就是我设置了表头的高度      sheet.setDefaultRowHeight(80,GC.Spread.Sheets.SheetArea. ...

您好,问题已重现,这边调研一下,后续有进展我会在本贴中回复您。

本帖先做保留处理了。
回复 使用道具 举报
palalpapa
注册会员   /  发表于:2023-8-9 13:29:40
10#
Joestar.Xu 发表于 2023-8-4 15:40
您好,问题已重现,这边调研一下,后续有进展我会在本贴中回复您。

本帖先做保留处理了。


你好,还有两个问题咨询下,
1.下载完之后打开,excel会报这个错误,请问要如何解决
image.png849451598.png


2. 在页面上表格有的列是readonly的,请问在下载的时候有什么配置参数能取消这些列的readonly属性吗,让下载下来的文档可以直接编辑
image.png807758483.png
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部