webpack学习---生产模式--css压缩

压缩css  需要npm下载  css-minimizer-webpack-plugin
                const {resolve} = require('path');
                const HtmlWebpackPlugin = require('html-webpack-plugin');
                const MiniCssExtractPlugin = require('mini-css-extract-plugin');

                //引入压缩css插件
                const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");


                process.env.NODE_ENV = 'production';

                module.exports = {
                entry: './src/js/index.js',
                output: {
                    filename: 'js/built.js',
                    path: resolve(__dirname, 'build')
                },
                module: {
                    rules: [
                    {
                        test: /\.css$/,
                        use: [
                        MiniCssExtractPlugin.loader,
                        'css-loader',
                        {
                            loader: 'postcss-loader',
                            options: {
                            postcssOptions: {
                                plugins: [
                                [
                                    "postcss-preset-env"
                                ],
                                ],
                            },
                            },
                        }
                        ]
                    }
                    ]
                },

                optimization: {
                    //设置压缩css插件
                    minimizer: [
                    // 在 webpack@5 中,你可以使用 `...` 语法来扩展现有的 minimizer(即 `terser-webpack-plugin`),将下一行取消注释
                    // `...`,
                    new CssMinimizerPlugin(),
                    ],
                    //认是在生产环境才会压缩代码,设置为true则开发环境开启压缩代码
                    minimize: true
                },

                plugins: [
                    new HtmlWebpackPlugin({
                    template: './src/index.html'
                    }),
                    new MiniCssExtractPlugin({
                    filename: 'css/built.css'
                    }),

                ],
                mode: 'development'
                };

 

相关文章

一准备工作umi为react的一个封装比较nice的脚手架。优点当然...
webpack在引入两个依赖的包时,可能需要使用shimming,意思是...
  Happypack (plugin)多线程使用loader编译文件treeshaki...
一目录结构├──build//构建相关├──config//配置相关├─...
接着第一节的demo现在我们尝试整合一些其他资源,比如图像,...
webpack的打包原理识别入口文件通过逐层识别模块依赖(Common...