使用webpack打包对外lib时import取到的是空对象或undefined

2022-07-13 18:20:06 浏览数 (1)

首先,webpack默认认为你现在正在开发的是一个应用而不是一个对外使用的库,所以默认打包结构是一个闭包,然后模块是作为闭包的参数列表,是个数组,每一项也是个匿名函数

也就是说,你在代码中 export 暴露出的对象,都在闭包中,所以也就不会对外暴露对象。

解决方案:

修改webpack配置文件,在 output 配置中加入如下配置

代码语言:javascript复制
library: 'libName', // libName 为对外暴露的库名称
libraryTarget: 'umd' // 定义模块运行的方式,将它的值设为umd

参考官方文档:Output | webpack

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=24299ll4gdokg

0 人点赞