自动化构建工具——9.webpack压缩css

    技术2025-09-28  17

    压缩CSS

    CSS体积越小,请求速度也会更快,那么加载速度就快,用户看到效果就更快一些,这样用户体验就会更好,所以在代码上线之前一定要压缩CSS。

    目录结构沿用上一节

    需要下载的插件

    optimize-css-assets-webpack-plugin

    npm i optimize-css-assets-webpack-plugin -D

    步骤

    引入插件const OptimizeCssAssetsWebpackPlugin = require('optimize-css-assets-webpack-plugin')使用插件:new OptimizeCssAssetsWebpackPlugin()

    默认配置足够,所以不需要修改配置,只需调用即可

    配置文件

    const { resolve } = require('path') const HtmlWebpackPlugin = require('html-webpack-plugin') const MiniCssExtractPlugin = require('mini-css-extract-plugin') const OptimizeCssAssetsWebpackPlugin = require('optimize-css-assets-webpack-plugin') // 设置node.js环境变量 // process.env.NODE_ENV = 'development' 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的配置 { loader: 'postcss-loader', options: { ident: 'postcss', plugins: () => [ // postcss的插件 require('postcss-preset-env')() ] } } ] }] }, plugins: [ new HtmlWebpackPlugin({ template: './src/index.html' }), new MiniCssExtractPlugin({ // 对输出的文件进行重命名 filename: 'css/built.css' }), // 压缩CSS,默认配置足够,所以不需要修改配置,只需调用即可 new OptimizeCssAssetsWebpackPlugin() ], mode: 'development', devServer: { contentBase: resolve(__dirname, 'build'), compress: true, port: 3000, open: true } }

    运行webpack/npx webpack-dev-server后查看相应css文件

    build->css->built.css

    可以看到CSS代码被压缩至一行

    Processed: 0.010, SQL: 9