yarn run build报错webpack.optimize.UglifyJsPlugin is not a constructor如何解决
报错原因
你当前使用的webpack版本已移除内置的webpack.optimize.UglifyJsPlugin,所以调用时会抛出不是构造函数的错误。
完整修改步骤
你的修改思路正确,按以下步骤操作即可解决问题:
- 若未安装对应依赖,先执行安装命令:
yarn add uglifyjs-webpack-plugin --dev - 取消配置文件顶部该行代码的注释:
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
- 取消
optimization配置块的注释,启用minimizer配置:
optimization: { minimizer: [ new UglifyJsPlugin({sourceMap: true}) ] },
- 必须删除
plugins数组中的旧版本内置插件调用代码:
new webpack.optimize.UglifyJsPlugin({ sourceMap: true }),
补充说明
如果项目中存在ES6+语法的代码需要压缩,更推荐替换使用terser-webpack-plugin,uglify-js不支持压缩ES6+语法,容易出现压缩报错。
内容的提问来源于stack exchange,提问作者Blake Lucey
相关产品推荐
相关产品推荐

