博客
关于我
webpack对css代码进行分割
阅读量:285 次
发布时间:2019-03-01

本文共 2049 字,大约阅读时间需要 6 分钟。

Webpack CSS 提取与优化配置指南

一、安装依赖

在项目根目录下运行以下命令安装所需插件:

npm install -D mini-css-extract-pluginnpm install -D optimize-css-assets-webpack-plugin

二、Webpack 配置

webpack.prod.js 文件中添加以下配置:

const MiniCssExtractPlugin = require('mini-css-extract-plugin')const OptimizeCssAssetsWebpackPlugin = require('optimize-css-assets-webpack-plugin')module.exports = {    // ... 其他 webpack 配置    plugins: [        new MiniCssExtractPlugin({            filename: '[name].css',            chunkFilename: '[name].chunk.css'        }),        new OptimizeCssAssetsWebpackPlugin({            optimization: {                minimizer: [                    new OptimizeCssAssetsWebpackPlugin()                ]            }        })    ]}

三、CSS 处理规则

修改 webpack.config.js 中的 CSS 加载器配置:

module.exports = {    module: {        rules: [            {                test: /\.css$/,                use: [                    MiniCssExtractPlugin.loader,                    'css-loader',                    'postcss-loader'                ]            },            {                test: /\.scss$/,                use: [                    MiniCssExtractPlugin.loader,                    {                        loader: 'css-loader',                        options: {                            importLoaders: 2,                            modules: true                        }                    },                    'sass-loader',                    'postcss-loader'                ]            }        ]    }}

四、CSS 资产优化

启用 optimize-css-assets-webpack-plugin 后,CSS 资产将被压缩合并:

module.exports = {    optimization: {        minimizer: [            new OptimizeCssAssetsWebpackPlugin()        ]    }}

五、示例 CSS 文件

style1.css

body {    background: red;}

style2.css

body {    font-size: 25px;}

合并后效果

body {    background: red;    font-size: 25px;}

六、小贴士

  • 热更新支持: mini-css-extract-plugin 不支持 CSS/SCSS 代码热更新,适合在线环境使用。
  • 模块化处理: 配置中 importLoaders: 2modules: true 确保了 SCSS 文件的正确模块化处理。
  • 压缩优化: optimize-css-assets-webpack-plugin 会自动合并和压缩 CSS 资产,提升打包效率和文件大小。
  • 通过以上配置,您可以轻松实现 CSS 提取与优化,提升项目性能和构建效率。

    转载地址:http://gqko.baihongyu.com/

    你可能感兴趣的文章
    SQL Server 存储过程分页。
    查看>>
    OSPF不能发现其他区域路由时,该怎么办?
    查看>>
    OSPF两个版本:OSPFv3与OSPFv2到底有啥区别?
    查看>>
    SQL Server 存储过程
    查看>>
    OSPF在大型网络中的应用:高效路由与可扩展性
    查看>>
    OSPF技术入门(第三十四课)
    查看>>
    OSPF技术连载10:OSPF 缺省路由
    查看>>
    OSPF技术连载13:OSPF Hello 间隔和 Dead 间隔
    查看>>
    OSPF技术连载14:OSPF路由器唯一标识符——Router ID
    查看>>
    OSPF技术连载15:OSPF 数据包的类型、格式和邻居发现的过程
    查看>>
    OSPF技术连载16:DR和BDR选举机制,一篇文章搞定!
    查看>>
    OSPF技术连载17:优化OSPF网络性能利器——被动接口!
    查看>>
    OSPF技术连载18:OSPF网络类型:非广播、广播、点对多点、点对多点非广播、点对点
    查看>>
    OSPF技术连载19:深入解析OSPF特殊区域
    查看>>
    SQL Server 复制 订阅与发布
    查看>>
    OSPF技术连载20:OSPF 十大LSA类型,太详细了!
    查看>>
    OSPF技术连载21:OSPF虚链路,现代网络逻辑连接的利器!
    查看>>
    OSPF技术连载22:OSPF 路径选择 O > O IA > N1 > E1 > N2 > E2
    查看>>
    OSPF技术连载5:OSPF 基本配置,含思科、华为、Junifer三厂商配置
    查看>>
    OSPF技术连载8:OSPF认证:明文认证、MD5认证和SHA-HMAC验证
    查看>>