Webpack 4 - неправильно минимизировать CSS и корректно JS - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть настроенный веб-пакет для моего проекта.Я хочу минимизировать исходники CSS.

Вот файл webpack.config.js:

var webpack = require('webpack');
const path = require('path');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');

module.exports = {
    devtool: 'source-map',
    mode: 'production',
    entry: {
        'target/web-resources/resources/lib/angular/angular.js': './node_modules/angular/angular.js',
        'target/web-resources/resources/lib/angucomplete-alt/angucomplete-alt.js': './node_modules/angucomplete-alt/angucomplete-alt.js',
        'target/web-resources/resources/lib/angucomplete-alt/angucomplete-alt.css': './node_modules/angucomplete-alt/angucomplete-alt.css',
    },
    module: {
        rules: [
            {
                test: /\.css$/,
                use: [
                    "style-loader",
                    "css-loader"
                ]
            }
        ]
    },
    plugins: [
        new MiniCssExtractPlugin({
            filename: "[name].css",
            chunkFilename: "[id].css"
        })
    ],
    optimization: {
        minimizer: [
            new UglifyJsPlugin({
                cache: true,
                parallel: true,
                sourceMap: true
            }),
            new OptimizeCssAssetsPlugin({
                assetNameRegExp: /\.min\.css$/g,
                cssProcessor: require('cssnano'),
                cssProcessorOptions: ['default', {discardComments: {removeAll: true}}],
                canPrint: true
            })
        ]
    },
    output: {
        path: path.resolve(__dirname, '.'),
        filename: '[name]'
    }

};

Однако он выдает мне файл CSS, например: https://pastebin.com/rWWWvkGG (без ожидаемого расширения.min.css - просто .css)

Также оригинальный файл angucomplete-alt.js, имеющий 27 КБ, создает файл размером 167 КБ.Похоже, что он включает в себя нечто большее, чем оригинальный код: https://pastebin.com/E87pzTh0

1 Ответ

0 голосов
/ 26 сентября 2018
module: {
    rules: [
        {
            test: /\.css$/,
            use: [
                MiniCssExtractPlugin.loader, // <---- this is missing
                "css-loader"
            ]
        }
    ]
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...