【webpack】解决使用umd模式打包后,在vue-cli项目引入为undefined问题
最近打包MChat.umd,遇到问题如下:
打包后 网站打不开 报错
vue Uncaught TypeError: Cannot read properties of undefined (reading ‘prototype‘)
正常引入
import mchat from "../static/lib/MChat.umd.js";
经过排查:不是Webpack打包配置的问题,而是vue-cli项目中默认的babel
配置,把这个Foo
当成了项目内部文件。即当你使用import Foo from 'xxx'
时,babel会检查目标文件(也就是’dist/index.js’)是否有export default
,然而打包后的文件一般不再二次处理了,需要将其添加到忽略项中
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
],
//添加忽略项
ignore: [
'./static/lib',
]
}