困扰很久的问题终于解决!!!
由于要在前端导出excel文件,需要xlsx模块,于是就使用npm来导入
npm install --save xlsx file-saver
但是尝试了很多次均报错,信息如下
由于报错信息很长,所以只能尝试截取不同的报错片段去尝试搜索答案。
1、首先尝试了如下片段的报错
有建议换源的,于是我换成了淘宝的源,但是依旧无效。
2、后来我把目光转向报错的结尾
在stackoverflow中有一些看上去可以的解决方案
rm -rf node_modules
rm package-lock.json
npm update
npm install
但很快发现不行,因为项目中没有 package-lock.json 文件
3、接着我又去搜索出现乱码的原因,也没有找到匹配的。
(但在这个过程中,我发现,所有的npm install 命令都会出现上述报错,感觉应该是配置什么的出现了问题。)
4、最后,我回到报错开头。原因是我多次观察npm install的过程,发现总是会跳出 node-sass 需要更新之类的信息,最后就是同样的报错,所以我猜测大抵是node-sass相关的问题。
最终在 stackoverflow 上找到 原因和解决方法 。
原因是 node-sass 版本和 Node.js 版本不兼容
项目中的node-sass版本为 4.14+,对应的node.js版本应该为14+,而我的node.js版本是16+
所以只要降低node.js版本即可解决这个问题
(最后顺利解决,成功导入了xlsx)
为了更方便地管理多版本node.js,建议下载nvm。