webpack 4 отключить uglifyjs-webpack-plugin

У меня было это проблема за последние 2 дня. Поэтому я решил полностью отключить uglifyjs-webpack-plugin от процесса сборки веб-пакета. Я не смог ничего найти в веб-пакете 4.


person yacine benzmane    schedule 10.07.2018    source источник


Ответы (1)


Если вы управляете одним webpack.config.js и используете package.json npmscripts в зависимости от среды. Вы также можете использовать этот подход.

Вы можете сделать что-то вроде этого: создайте массив defaultplugins и проверьте среду, если среда является prod, в противном случае нажмите на массив, используя defaultplugins. как показано в примере:

package.json

"config-prod": "webpack --env.NODE_ENV=prod --parallel build-webpack",
"build-prod": "npm run config-prod"

webpack.config.js Добавлены только релевантные разделы, чтобы их было легко читать

var webpack = require("webpack");
var path = require("path");
const UglifyJSPlugin = require("uglifyjs-webpack-plugin");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const webpackUtilities = require("./webpack.utilities");

module.exports = (env) => {
  var defaultplugins = [
    new webpack.DefinePlugin({
       ///// section deleted
    }),
    new MiniCssExtractPlugin({
      ///// section deleted
    }),
  ];

  return {
    mode: env.NODE_ENV == "prod" ? "production" : "development",
    devtool: env.NODE_ENV == "prod" ? "" : "source-map";,
    entry: {
      ///// section deleted
    },
    output: {
         ///// section deleted
    },
    module: {
      rules: [
        {
          ///// section deleted
        },
      ],
    },
    plugins:
      env.NODE_ENV == "prod"
        ? [...defaultplugins, new UglifyJSPlugin()]
        : [...defaultplugins],
    resolve: {
      extensions: [".js", ".jsx", ".scss", ".css"],
    },
  };
};

person KushalSeth    schedule 29.09.2020