针对这个问题我上周解决了将近一个周才解决 得出了好几个方法现在给大家分享一下我的心得
开发环境 vue2+webpack3
网上好多人说这是UglifyJs 针对es6语法不兼容的问题,解决方法如下
第一张解决方法
如果说有明确报错出自于那个包
把报错的包放在我圈起来的地方,当解析的时候是babel来解析这个包不是uglifyJs
第二种解决方法
把打包工具uglifyJs换成terser-webpack-plugin ,但这个工具只对webpack4及以上版本友好,我这里是webpack3版本就没用
npm install terser-webpack-plugin -D 下载命令
const terser-webpack = require(‘terser-webpack-plugin’)
在使用页面引入
在plugin配置项中配置new terser-webpack({})即可
第三种解决办法 在根目录中创建一个.babelrc文件
文件内容如下
{
“presets”: [
[“env”, {
“modules”: false,
“targets”: {
“browsers”: ["> 1%", “last 2 versions”, “not ie <= 8”]
}
}],
“stage-2”
],
“plugins”: [“transform-runtime”],
“env”: {
"test": {
"presets": ["env", "stage-2"],
"plugins": ["istanbul"]
}
}
}
第四种解决方法
把自带的uglifyJS进行升级
npm view uglifyjs-webpack-plugin versions 查看它的所以版本
npm install -D uglifyjs-webpack-plugin@版本号 指定下载版本号 我这里使用的是1.3.0版本
末尾 这就是这一周vue打包问题一直碰壁所得出的方法 大家自行选择