web-dev-qa-db-ja.com

Webpack V4:Webpack&Uglifyでconsole.logsを削除します

この答えは以前は魅力のように機能しました:

https://stackoverflow.com/a/41041580/3894981

ただし、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
    }
  }));
}
6
dude

あなたはまだそれをconfig.pluginsに入れています、あなたはそれをconfig.optimization.minimizerに入れてみましたか?

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

...

optimization: {
  minimizer: [
    new UglifyJSPlugin({
      uglifyOptions: {
        compress: {
          drop_console: true,
        }
      }
    })
  ]
}
13
Dominic

これはWebpack4では機能しなくなりました。Terserプラグインを使用する必要があります。こちらをご覧ください https://stackoverflow.com/a/41041580/378506

1
sMyles