Webpack V4:使用Webpack和Uglify删除console.logs

dud*_*ude 6 compression uglifyjs webpack

这个答案就像以前的魅力一样:

/sf/answers/2872910631/

但是,由于Webpack v4它不再起作用.从那以后它抛出:

错误:webpack.optimize.UglifyJsPlugin已被删除,请改用config.optimization.minimize.

为了使它在Webpack v4中运行,有什么必要?

我没有运气就试过使用以下内容:

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

if (process.argv.indexOf('-p') !== -1) {
  // compress and remove console statements. Only add this plugin in production
  // as even if drop_console is set to false, other options may be set to true
  config.plugins.push(new uglifyJsPlugin({
    compress: {
      'drop_console': true
    }
  }));
}
Run Code Online (Sandbox Code Playgroud)

Dom*_*nic 13

你仍然把它放在config.plugins中,你试过把它放在config.optimization.minimizer中吗?

const UglifyJSPlugin = require('uglifyjs-webpack-plugin')

...

optimization: {
  minimizer: [
    new UglifyJSPlugin({
      uglifyOptions: {
        compress: {
          drop_console: true,
        }
      }
    })
  ]
}
Run Code Online (Sandbox Code Playgroud)