news 2026/6/9 18:44:53

webpack - webpack 提取 css 成单独文件、css 兼容性处理、压缩 css 等详细教程操作(示例解析 webpack 提取 css 为单独文件)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
webpack - webpack 提取 css 成单独文件、css 兼容性处理、压缩 css 等详细教程操作(示例解析 webpack 提取 css 为单独文件)

介绍

关于webpack提取css为单独文件的相关问题,包括了css兼容性处理以及压缩css等内容,下面一起来看一下,希望对大家有帮助。

安装插件并引入

npm install mini-css-extract-plugin -D
constMiniCssExtractPlugin=require('mini-css-extract-plugin')

配置插件plugins

plugins:[newHtmlWebpackPlugin({template:'./src/index.html'}),newMiniCssExtractPlugin({filename:'css/built.css'//对输出的文件进行重命名,默认为main.css})],

修改loader文件

{test:/.css$/,use:[//取代css-loader,提取js中css成单独文件(注意)MiniCssExtractPlugin.loader,//将css文件整合到JS文件中'css-loader',]},

css兼容性处理

一、安装插件:

npm install postcss-loader postcss-preset-env-D

二、在module中配置postcss-loader并配置postcss-preset-env插件

{test:/.css$/,use:[//取代css-loader,提取js中css成单独文件MiniCssExtractPlugin.loader,//将css文件整合到JS文件中'css-loader',//css兼容性处理:postcss --> postcss-loader postcss-preset-env//帮postcss找到package.json中browserslist里面的配置,通过配置加载指定的css兼容性样式{loader:'postcss-loader',options:{ident:'postcss',//默认配置plugins:()=>[require('postcss-preset-env')()]}}]},

三、配置package.json中的browserslist

"browserslist":{"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"],"production":[">0.1%","not dead","not op_mini all"]}

四、为了使package.json中browserslist中的development环境生效,需要在webpack.config.js中配置环境,因为默认是生产环境,我们开发需要开发环境

const{resolve}=require('path')constHtmlWebpackPlugin=require('html-webpack-plugin')constMiniCssExtractPlugin=require('mini-css-extract-plugin')//设置node.js环境变量,默认是生产环境,配置后为开发环境;process.env.NODE_ENV='development';

压缩css

一、安装插件并引用

npm install optimize-css-assets-webpack-plugin -D
constOptimizeCssAssetsWebpackPlugin=require('optimize-css-assets-webpack-plugin')

二、在plugins中配置插件

plugins:[newHtmlWebpackPlugin({template:'./src/index.html'}),newMiniCssExtractPlugin({filename:'css/built.css'//对输出的文件进行重命名}),//压缩css文件newOptimizeCssAssetsWebpackPlugin()],
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/5 8:42:43

python_django基于微信小程序的移动医院挂号预约系统

文章目录 系统概述技术架构核心功能创新点应用价值 系统设计与实现的思路主要技术与实现手段源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 系统概述 基于微信小程序的移动医院挂号预约系统采用PythonDjango框架开发后端服务&#xff0…

作者头像 李华
网站建设 2026/6/6 8:26:13

python_django安卓企业直播内容管理系统小程序

文章目录技术架构概述核心功能模块数据流与安全性能优化策略扩展性设计系统设计与实现的思路主要技术与实现手段源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!技术架构概述 Python Django 作为后端框架,提供 RESTful API 接…

作者头像 李华
网站建设 2026/6/6 7:22:56

基于Impress.js的智能多面棱柱演示器:技术与创意深度解析

第一章:引言与项目背景1.1 Web 3D交互的发展历程在当今快速发展的Web技术领域,3D交互体验已成为提升用户参与度和沉浸感的关键因素。从早期的Flash动画到如今的WebGL和CSS 3D变换,Web三维技术已经走过了漫长的发展道路。根据最新统计数据&…

作者头像 李华
网站建设 2026/6/5 20:57:27

程序员必学!企业级大模型落地全攻略:6-12个月实现AI转型的关键路径

企业级大模型作为突破性技术,能显著提升生产力并驱动业务创新。企业实施周期已缩短至6-12个月,47%的企业认为与领先厂商合作是成功关键。选择服务商时应注重全栈开发能力、丰富工具及垂直场景经验。成功标志不在于部署多少模型,而在于建立持续…

作者头像 李华
网站建设 2026/6/6 6:43:41

【机械臂路径规划】基于 RRT算法的3自由度机械臂路径规划器,在存在圆形障碍物的环境中,为机械臂找到一条从初始关节角度到目标关节角度的无碰撞路径附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#…

作者头像 李华