最近在研究有什么类Excel的表格库。目前看到的话就是luckysheet和univer。
univer是luckysheet的升级版,问题是开源版没有提供导入导出功能。
在尝试luckysheet的导入功能的时候,会发现官方demo是没有报错的。而在自己的项目里就会有报错
导入呢是官方提供的一个LuckyExcel库来实现的
在调用LuckyExcel.transformExcelToLucky的时候会发生报错。
报错原因可以参考这个文章,只是博主没有说清楚解决方式,只是说全部清掉
https://blog.csdn.net/qq_40183816/article/details/127514786
总的来说,问题其实是我们的项目对Array的原型链做了拓展
比如我们项目Array.prototype上面加了几个方法,就会导致报错。
但是我们项目已经很多地方都用到了,不想去大改。那么就可以尝试一下这个方法
在不改动其他页面的情况下。我们只需要处理这里的导入方法, 再调用LuckyExcel.transformExcelToLucky之前,把原型链上那些额外加的方法都存起来,然后删掉,
在导入完成的回调后面,再重新赋值。这样也是可以解决报错问题的~
题外话。其实最近调研下来发现,luckysheet存在的问题不少,不能多实例,不能npm包引入,没有提供导出功能,网上找的导出写法多多少少都会有bug。打印功能也是没有的
所以我在想是不是直接使用univer会比较好。但是要自己实现导入导出的功能,需要对文件解析并且转换成univer要的json格式。