ES6编写的模块发布npm包的坑

问题:采用ES6语法编写的模块,通过export导出,webpack打包转换成ES5,然后发布npm。再使用的时候通过import方式引入的时候会是个空对象。

原因:因为webpack配置的时候忘了参数libraryTarget: 'commonjs2'。需要加上该参数就可以了,如图:

 

解析:

 我们期望的是logger.js符合commonjs规范,但是我们在配置中并没有指出,所以webpack打包出来的文件,什么也没导出。加上该参数,指出让webpack是按照commonjs规范导出变量。

posted @ 2021-01-11 18:31  闯入码途的水产人  阅读(484)  评论(0编辑  收藏  举报