详解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 相关文章推荐
JQuery 弹出框定位实现方法
Dec 02 Javascript
jquery 单击li防止重复加载的实现代码
Dec 24 Javascript
jQuery源码分析-01总体架构分析
Nov 14 Javascript
button没写type=button会导致点击时提交
Mar 06 Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 Javascript
微信小程序实现根据字母选择城市功能
Aug 16 Javascript
写给vue新手们的vue渲染页面教程
Sep 01 Javascript
JS动态修改网页body的背景色实例代码
Oct 07 Javascript
Vue-Router的使用方法
Sep 05 Javascript
小程序实现订单倒计时功能
Apr 23 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
Apr 28 Javascript
vue实现下拉加载其实没那么复杂
Aug 13 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 之Section与Cookie使用总结
2012/09/14 PHP
php模拟ping命令(php exec函数的使用方法)
2013/10/25 PHP
php中OR与|| AND与&&的区别总结
2013/10/26 PHP
PHP云打印类完整示例
2016/10/15 PHP
JQUERY的属性选择符和自定义选择符使用方法(二)
2011/04/07 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
javascript 循环调用示例介绍
2013/11/20 Javascript
angular简介和其特点介绍
2015/01/29 Javascript
Bootstrap每天必学之缩略图与警示窗
2015/11/29 Javascript
最简单的tab切换实例代码
2016/05/13 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
微信小程序开发经验总结(推荐)
2017/01/11 Javascript
JavaScript通过改变文字透明度实现的文字闪烁效果实例
2017/04/27 Javascript
深入理解vue中的$set
2017/06/01 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
Bootstrap框架建立树形菜单(Tree)的实例代码
2017/10/30 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
详解vue中router-link标签所必备了解的属性
2019/04/15 Javascript
[02:46]完美世界DOTA2联赛PWL DAY4集锦
2020/11/03 DOTA
python列表的常用操作方法小结
2016/05/21 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
python去除文件中重复的行实例
2018/06/29 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
pd.DataFrame统计各列数值多少的实例
2019/12/05 Python
使用Python pip怎么升级pip
2020/08/11 Python
Python操作dict时避免出现KeyError的几种解决方法
2020/09/20 Python
Perry Ellis官网:美国男士品味服装
2016/12/09 全球购物
个人借款担保书
2014/04/02 职场文书
学生党员公开承诺书
2014/05/28 职场文书
2014年护士工作总结范文
2014/11/11 职场文书
起诉离婚协议书样本
2014/11/25 职场文书
2014年体育教学工作总结
2014/12/09 职场文书
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技