Webpack 4 - Simge durumuna küçültme nasıl yapılandırılır?


114

Webpack 4 aşağıdaki ifadeyle birlikte gelir:

webpack.optimize.UglifyJsPlugin kaldırıldı, bunun yerine lütfen config.optimization.minimize kullanın.

Yeterince adil, ancak başlık altında çalışan UglifyJsPlugin örneğini yapılandırma hakkında herhangi bir bilgi bulamıyorum, örneğin önbellek dizinini değiştirmek için. Bu yapılabilir mi?


2
Referans için, UglifyJsPluginvarsayılanlar burada
— davnicwil

Yanıtlar:


95

Varsayılan konfigürasyonu değiştirmek mümkün değildir.

Bununla birlikte optimization.minimizer, kendi örneğinizi oluşturmak için bu ayarı kullanabilirsiniz UglifyJsPlugin. 4.0'ı kullanarak, örneğin olarak modeayarlandığında bile kaynak haritalarını almak için bu örneği kullandık 'production'(4.1.1'den itibaren artık gerekli değildir):

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
      })
    ]
  }
};

95
Webpack 4'ün sıfır conf olması gerekmiyor muydu?
— connexo

3
Bu, eklentiyi başlatmamı gerektiriyor, sadece mevcut yapılandırmayı değiştirmek istiyorum.
— csvan

4
Ve yapmanız gerekebileceğini unutmayın yarn add uglifyjs-webpack-plugin --dev;)
— Alfonso Pérez

2
ve burada; bu sayfada "optimization.minimizer" araması yapın: medium.com/webpack/webpack-4-mode-and-optimization-5423a6bc597a
— Beau

3
@ AlfonsoPérez web paketi uglifyjs-webpack-pluginbir bağımlılık olarak zaten yükleniyor
— Beau

5

Eklemeden uglifyjs-webpack-plugin, sadece sonuna bu ekleyebilir webpack.prod.config.js dosyası:

 optimization: {
   minimize: false
 }

2

Bunu deneyebilirsin

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

webpack.config.js

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

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

web paketi belgeleri




Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.