Webpack 4 - 如何配置最小化?

时间:2018-03-01 15:35:04

标签: javascript web webpack webpack-4

Webpack 4附带以下声明:

  

webpack.optimize.UglifyJsPlugin已被删除,请改用config.optimization.minimize。

足够公平,但我找不到任何有关配置在底层运行的UglifyJsPlugin实例的信息,例如更改缓存目录。可以这样做吗?

6 个答案:

答案 0 :(得分:72)

无法修改默认配置。

但是,您可以使用optimization.minimizer设置来实例化您自己的UglifyJsPlugin。使用4.0,我们使用此示例获取源映射,即使mode设置为'production',例如(从4.1.1开始不再需要):

const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

module.exports = {
  optimization: {
    minimizer: [
      // we specify a custom UglifyJsPlugin here to get source maps in production
      new UglifyJsPlugin({
        cache: true,
        parallel: true,
        uglifyOptions: {
          compress: false,
          ecma: 6,
          mangle: true
        },
        sourceMap: true
      })
    ]
  }
};

答案 1 :(得分:1)

只需运行:

yarn add uglifyjs-webpack-plugin --dev

参考:Alfonso Pérez答案

答案 2 :(得分:0)

对于那些在我身后的人,意识到这个误导性错误与我的正确Webpack配置无关,但实际上,offline-plugin已过时并导致了此问题。它需要升级。参见github问题:https://github.com/webpack-contrib/uglifyjs-webpack-plugin/issues/234#issuecomment-369134047

答案 3 :(得分:0)

您可以尝试

npm install uglifyjs-webpack-plugin --save-dev

webpack.config.js

const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

module.exports = {
  optimization: {
    minimizer: [new UglifyJsPlugin()],
  },
};

webpack documentation

答案 4 :(得分:0)

无需添加uglifyjs-webpack-plugin,您可以将其添加到 webpack.prod.config.js 文件的末尾:

 optimization: {
   minimize: false
 }

答案 5 :(得分:-3)

您应该检查p选项:https://webpack.js.org/guides/production/#cli-alternatives:此标志告诉Webpack优化生产环境的构建。您可以将它与新的"生产" mode用于较小的构建。