详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)


Posted in Javascript onOctober 26, 2018

在项目中经常会需要将一些接口的配合文件或者某些样式文件,分离出来单独打包,便于后期改动,这里我以css文件为例,介绍实现两种方法:

项目目录:

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

如上图所示,现在我需要将项目中的scBtn.css文件单独打包出来。在不做任何配置,直接打包出来的css文件是压缩合并成了一个了,如下图,当我想要改某一个css文件时就不行了。

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

方法一:

1、在bulid文件夹下建一个copy.js(这个js名称可以自定义)

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

代码如下:

var fs = require('fs');
var path = require('path');

function resolve(dir) {
 return path.join(__dirname, '..', dir)
}
//origin要打包的css文件路径;target打包后的css文件路径
var qurConfig = {
 name: 'scBtn.css',
 origin: resolve('/src/assets/css/scBtn.css'),
 target: resolve('/dist/static/css/scBtn.css')
};

function copy(obj) {
 fs.createReadStream(obj.origin).pipe(fs.createWriteStream(obj.target));
 console.log('\x1B[32m%s\x1B[39m', '复制成功--------' + obj.name);

}
copy(qurConfig);

2、在package.json文件中加入 "copy": "node build/copy.js"

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

3、在html文件中引入scBtn.css文件,这里需要放在下面,因为放上面打包的css会后引入会覆盖前面的样式

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

4、运行 npm run bulid 打包完后再运行 npm run copy

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

这时你就可以在scBtn中改样式了。

方法二:

步骤一、步骤二如方法一所示。

3、在html文件中引入scBtn.css文件,这时你不要放在底部,因为方法二的思路是在打包所有css文件时排除scBtn.css,不会有样式覆盖的问题。

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

4、如下图,你需要修改bulid文件夹下,utils.js文件中的styleLoaders函数,加一个判断条件,在extension为css时正则改成test: new RegExp("^((?!scBtn).)*.css$"),排除scBtn.css文件

详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)

5、运行 npm run bulid 打包完后再运行 npm run copy;就可以了

js文件也是按照此方法就好了

总结

以上所述是小编给大家介绍的webpack打包时排除其中一个css、js文件或单独打包一个css、js文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js 获取浏览器高度和宽度值(多浏览器)
Sep 02 Javascript
JavaScript Event事件学习第一章 Event介绍
Feb 07 Javascript
jQuery中even选择器的定义和用法
Dec 23 Javascript
JavaScript中实现继承的三种方式和实例
Jan 29 Javascript
js代码验证手机号码和电话号码是否合法
Jul 30 Javascript
jquery实现的V字形显示效果代码
Oct 27 Javascript
jQuery绑定事件监听bind和移除事件监听unbind用法实例详解
Jan 19 Javascript
electron demo项目npm install安装失败的解决方法
Feb 06 Javascript
express + jwt + postMan验证实现持久化登录
Jun 05 Javascript
vue+elementUI动态增加表单项并添加验证的代码详解
Dec 17 Vue.js
JavaScript canvas实现雨滴特效
Jan 10 Javascript
json.stringify()与json.parse()的区别以及用处
Jan 25 Javascript
js自定义input文件上传样式
Oct 26 #Javascript
解决axios会发送两次请求,有个OPTIONS请求的问题
Oct 25 #Javascript
在Vue中使用axios请求拦截的实现方法
Oct 25 #Javascript
webpack4+react多页面架构的实现
Oct 25 #Javascript
浅谈让你的代码更简短,更整洁,更易读的ES6小技巧
Oct 25 #Javascript
代码整洁之道(重构)
Oct 25 #Javascript
Vue使用NPM方式搭建项目
Oct 25 #Javascript
You might like
PHP输出一个等腰三角形的方法
2015/05/12 PHP
PHP 并发场景的几种解决方案
2019/06/14 PHP
在JavaScript中获取请求的URL参数[正则]
2010/12/25 Javascript
简介JavaScript中Boolean.toSource()方法的使用
2015/06/05 Javascript
JS实现自动切换文字的导航效果代码
2015/08/27 Javascript
Jil,高效的json序列化和反序列化库
2017/02/15 Javascript
javascript编程实现栈的方法详解【经典数据结构】
2017/04/11 Javascript
微信小程序实现判断是分享到群还是个人功能示例
2019/05/03 Javascript
[01:08:32]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第二场 1月18日
2021/03/11 DOTA
Python def函数的定义、使用及参数传递实现代码
2014/08/10 Python
详解使用python的logging模块在stdout输出的两种方法
2017/05/17 Python
Django中login_required装饰器的深入介绍
2017/11/24 Python
安装python时MySQLdb报错的问题描述及解决方法
2018/03/20 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
Python 虚拟空间的使用代码详解
2019/06/10 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
tensorflow tf.train.batch之数据批量读取方式
2020/01/20 Python
pytorch梯度剪裁方式
2020/02/04 Python
Python Scrapy框架第一个入门程序示例
2020/02/05 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
python mysql中in参数化说明
2020/06/05 Python
Django如何在不停机的情况下创建索引
2020/08/02 Python
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
详解移动端Html5页面中1px边框的几种解决方法
2018/07/24 HTML / CSS
美国当红的名品折扣网:Gilt Groupe
2016/08/15 全球购物
FOREO斐珞尔官方旗舰店:LUNA露娜洁面仪
2018/03/11 全球购物
中学教师管理制度
2014/01/14 职场文书
成人继续教育实施方案
2014/03/01 职场文书
手术室护士节演讲稿
2014/08/27 职场文书
学院党的群众路线教育实践活动第一阶段情况汇报
2014/10/25 职场文书
2014年工商所工作总结
2014/12/09 职场文书
换届选举主持词
2015/07/03 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
Javascript之datagrid查询详解
2021/09/15 Javascript
Win11 Build 22000.51版本文件资源管理器“命令栏”和上下文菜单有什么新变化?
2021/11/21 数码科技
JS开发前端团队展示控制器来为成员引流
2022/08/14 Javascript