发布npm包时遇到的模块化问题

103 阅读1分钟

一:包不支持require方式导入

image.png 解决方案:1找合适版本。2换成import导入方式

二:【SyntaxError: Cannot use import statement outside a module】

image.png
报错原因是不能在模块外使用 import 语句。在 Node.js 环境中默认使用的是 [CommonJS] 规范。需要使用 require 语句进行导入。import 是 ES6 中的模块化写法,CommonJS 模块与 ES6 模块不兼容。 针对这个问题有如下解决方案:

① 在 package.json 中设置字段 “type”:“module”

② 使用 .mjs 的扩展名。(从 Node.js v13.2 版本开始,Node.js 已经默认打开了 ES6 模块支持。Node.js 要求 ES6 模块采用 .mjs
后缀文件名)