output: {
publicPath: '/',
path: path.join(__dirname, 'lib'),
filename: 'chart.js',
library: 'tcharts',
libraryTarget: 'umd',
umdNamedDefine: true,
},
output 中的配置,主要是 libraryTarget 和 umdNamedDefine。
另外一点就是在 babel 的配置中需要添加 "sourceType": "unambiguous" 这个配置。
因为 webpack4 不支持 export default 和 module.exports 混用,而我们通常在项目中使用的是 export default 的方式,而 webpack 打包的 library 是 module.exports 的方式,所以没添加这个配置时,使用 import 来加载 webpack 打包的 library 得到的是 undefined。加上这个后会通过语法进行推测,从而能正常使用。