找回密码
 立即注册

QQ登录

只需一步,快速开始

excelxnz

注册会员

4

主题

21

帖子

63

积分

注册会员

积分
63
最新发帖
excelxnz
注册会员   /  发表于:2021-8-10 10:23  /   查看:3664  /  回复:14
1金币
本帖最后由 excelxnz 于 2021-8-10 10:25 编辑

image.png979485778.png
使用的Vue版本,需要在导入完成对数据做处理,那么如何监听导入(成功或失败)事件?注意:是官方插件自带的导入控件!


最佳答案

查看完整内容

出现这个问题是因为spread对象没有正确获取,请参考下面的代码修改

14 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-10 10:23:09
来自 13#
excelxnz 发表于 2021-8-13 16:08
这个是有错误的demo,辛苦您 npm install 一下

出现这个问题是因为spread对象没有正确获取,请参考下面的代码修改
image.png842955932.png
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-10 13:33:52
2#
目前这部分是封装好的,暂时没有对应的事件或者方法可以监听,我们已经有相关需求提给研发可能会在后面的版本实现。
回复 使用道具 举报
excelxnz
注册会员   /  发表于:2021-8-10 14:55:08
3#
如果业务场景中有需要,有什么解决方案呢?1.获取版权后更改封装好的代码? 2.工具栏去掉“文件”,开发者自己重新写相关操作? 还是有什么其它办法?请协助说明一下,先谢谢了!
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-10 15:33:16
4#
excelxnz 发表于 2021-8-10 14:55
如果业务场景中有需要,有什么解决方案呢?1.获取版权后更改封装好的代码? 2.工具栏去掉“文件”,开发者 ...

目前来说没有太好的方法。封装的这部分目前没有API能够获取并进行修改。

如果要重做的话只能把这个文件栏删除,然后在其他工具栏或者在整个工具栏上方添加导入Excel的按钮
image.png434937438.png


但是想要实现跟原生导入的样式一样,这个目前不支持。
image.png48732298.png
回复 使用道具 举报
excelxnz
注册会员   /  发表于:2021-8-10 17:03:24
5#
请问一下。“文件”这个菜单怎么去掉?保留其它工具栏
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-10 17:22:43
6#
excelxnz 发表于 2021-8-10 17:03
请问一下。“文件”这个菜单怎么去掉?保留其它工具栏

可以参考这个demo,将config的fileMenu删除 delete config.fileMenu

vue.zip

106.8 KB, 下载次数: 57

回复 使用道具 举报
excelxnz
注册会员   /  发表于:2021-8-12 22:09:06
7#
本帖最后由 excelxnz 于 2021-8-12 22:13 编辑

Vue 自己改版导入控件后,一直提示“Incorrect file format.”或中文版“文件格式错误”
代码如下
  1. //控件是这样添加的
  2. var finp = document.createElement("input");
  3.         finp.type = "file";
  4.         finp.id = "inpFile";
  5.         // finp.accept = ".xlsx,.xls";
  6.         finp.onchange = this.onFileImported;
  7.         // <input type="file" name="files[]" id="fileDemo" accept="。xlsx,.xls"/>
  8.         document.querySelector(".ribbon-button-welcome").appendChild(finp);

  9. // file input 的change监听
  10.       onFileImported(event){
  11.         var excelIo = new GC.Spread.Excel.IO();
  12.         var file = event.target.files[0];
  13.         excelIo.open(file, function (json) {
  14.           console.log(json)
  15.           var workbookObj = json;
  16.           spread.fromJSON(workbookObj);

  17.         }, function (e) {
  18.             // process error
  19.             console.log(e);
  20.         }, {});
  21.       },
复制代码


回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-13 11:21:21
8#
excelxnz 发表于 2021-8-12 22:09
Vue 自己改版导入控件后,一直提示“Incorrect file format.”或中文版“文件格式错误”
代码如下

请问您传的是否是xlsx文件呢?我们是不支持xls文件的,需要您到excel中另存为xlsx才能导入。如果不是,建议您提供一个能复现的demo,这边调研一下。或者您可以参考附件的demo。

SpreadDemo导出.zip

3.5 MB, 下载次数: 44

回复 使用道具 举报
excelxnz
注册会员   /  发表于:2021-8-13 14:12:33
9#
本帖最后由 excelxnz 于 2021-8-13 14:35 编辑

是xlsx 的,不过是wps保存出来的,和这个有关系么?我又重新尝试了一下,我也没什么特殊操作,就是还是报错稍等我打包一个demo您帮忙看一下吧
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部