webpack插件之extract-text-webpack-plugin
发布日期:2021-10-15 18:54:41
浏览次数:15
分类:技术文章
本文共 2803 字,大约阅读时间需要 9 分钟。
此插件在webpack中文官网的地址:
https://webpack.docschina.org/plugins/extract-text-webpack-plugin/
说明:
此插件主要是为了抽离css样式,防止将样式打包在js中引起页面样式加载错乱的现象。 安装:$ npm install extract-text-webpack-plugin --save-dev
如果直接安装的话,会安装"extract-text-webpack-plugin": “^3.0.2”,执行webpack打包命令时会报错,因为extract-text-webpack-plugin支持webpack3.x版本的,面对webpack4.0版本,只能安装:
$ npm install extract-text-webpack-plugin@next --save-dev//会下载到4.0的//"extract-text-webpack-plugin": "^4.0.0-beta.0",
代码:
var path = require("path");// 1、引入ExtractTextWebpackPluginvar ExtractTextWebpackPlugin = require('extract-text-webpack-plugin');module.exports = { entry: { index: "./src/index.js" }, output: { path: path.resolve(__dirname, "dist"), publicPath: "dist/", filename: '[name].bundle.js', chunkFilename: "[name].bundle.js"// 指定打包文件的块名称 }, module: { rules: [ { test: /\.css$/, use: ExtractTextWebpackPlugin.extract({ // 2、使用ExtractTextWebpackPlugin // 不提取的时候,使用什么样的配置来处理css // fallback是指编译后用什么loader编译代码 fallback: { loader: 'style-loader', options: { //此属性一般是在style-loader中使用, //是指将多个css文件的代码统一合并到一个style标签中 singleton: true } }, use: [ // 提取的时候,继续用下面的方式处理 { loader: 'css-loader', options: { //是否开启压缩功能 minimize: true } } ] }) } ] }, plugins: [ new ExtractTextWebpackPlugin({ //3、 在plugins中配置属性 filename: '[name].min.css', // 配置提取出来的css名称 //true表示会把所有的css都提取出来,false只会把初始化的提取,默认是false allChunks:false, // }) ]}
extract-text-webpack-plugin多实例应用:
const ExtractTextPlugin = require('extract-text-webpack-plugin');// 创建多个实例const extractCSS = new ExtractTextPlugin('stylesheets/[name]-one.css');const extractLESS = new ExtractTextPlugin('stylesheets/[name]-two.css');module.exports = { module: { rules: [ { test: /\.css$/, use: extractCSS.extract(['css-loader', 'postcss-loader']) }, { test: /\.less$/i, use: extractLESS.extract(['css-loader', 'less-loader']) }, ] }, plugins: [ extractCSS, extractLESS ]};
此外,extract-text-webpack-plugin插件的优缺点分析,
转载地址:https://blog.csdn.net/shenshulong/article/details/104127046 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月19日 01时43分01秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
MAT启动报错
2019-04-27
Jprofile解析dump文件使用详解
2019-04-27
浅谈代码覆盖率
2019-04-27
Java代码覆盖率历史发展轨迹
2019-04-27
【防止重复下单】分布式系统接口幂等性实现方案
2019-04-27
一图秒懂开源许可证协议-GPL、BSD、MIT、Mozilla、Apache,LGPL
2019-04-27
websocket 项目启示录
2019-04-27
性能测试
2019-04-27
Java电商系统商品详情页存储方案设计
2019-04-27
Jacoco探针源码解析(0.8.5 版本)
2019-04-27
Java的Instrumentation类原理分析
2019-04-27
"org.jacoco.agent.rt" 在 maven 中找不到
2019-04-27
计算机中的dump到底是什么意思?
2019-04-27
JaCoCo探针策略原理及案例总结
2019-04-27
阿里三面:说说线程封闭与ThreadLocal的关系
2019-04-27
看完让你吊打面试官-@Autowired注解到底怎么实现的?
2019-04-27
MySQL的行锁、表锁、间隙锁详解
2019-04-27
和阿里面试官扯了半小时ArrayBlockingQueue源码
2019-04-27
远离996,PDMan开源免费的国产数据库建模工具!
2019-04-27
现代操作系统的存储器结构
2019-04-27