Webpack не минимизирует файл .js при добавлении OptimizeCssAssetsPlugin (без него это работает) - PullRequest
0 голосов
/ 25 марта 2019

В производственном режиме мой веб-пакет минимизирует .js (как и должно быть).Но мне также нужно минимизировать мой .css, и для этого я должен использовать OptimizeCssAssetsPlugin.Когда я его использую, он минимизирует мои .css, но тогда мои .js остаются не минимизированными.

Я предполагаю, что когда я использую оптимизацию (рядом с «модулями и плагинами»), чего-то не хватает для js, потому что безВесь блок «Оптимизация» работает.Но что это?И почему?

const path = require('path');
const HtmlWebPackPlugin = require("html-webpack-plugin");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const WriteFilePlugin = require("write-file-webpack-plugin");
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');

module.exports = {
    entry: './src/index.js',
    output: {
        path: path.join(__dirname, '/dist'),
        filename: 'bundle.js',
        publicPath: '/'
    },
    devtool: 'source-map',
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: "babel-loader"
                }
            },
            {
                test: /\.(sa|sc|c)ss$/,
                exclude: /node_modules/,
                use: [MiniCssExtractPlugin.loader, "css-loader", "sass-loader"]
            }
        ]
    },
    plugins: [
        new HtmlWebPackPlugin({
            template: "./demo/index.html",
            filename: "index.html", 
            inject: false
        }),
        new MiniCssExtractPlugin({
            filename: "style.css"
        }),
        new WriteFilePlugin() 
    ],
    optimization: {
        minimizer: [
          new OptimizeCssAssetsPlugin(), 
        ],
      },
};

1 Ответ

1 голос
/ 26 марта 2019

Пожалуйста, ознакомьтесь с производственной конфигурацией документации MiniCssExtractPlugin:

В то время как веб-пакет 5, скорее всего, будет иметь встроенный минимизатор CSS, с веб-пакетом 4 вам потребуется собственный.Чтобы минимизировать вывод, используйте плагин, такой как optimize-css-assets-webpack-plugin.Настройка Optimizer.minimizer переопределяет значения по умолчанию, предоставляемые веб-пакетом, поэтому обязательно укажите также JS minimizer ...

С уважением,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...