详解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 相关文章推荐
一个可以兼容IE FF的加为首页与加入收藏实现代码
Nov 02 Javascript
jQuery基础知识filter()和find()实例说明
Jul 06 Javascript
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
Nov 16 Javascript
javascript学习之闭包分析
Dec 02 Javascript
Jquery中使用setInterval和setTimeout的方法
Apr 08 Javascript
对于Form表单reset方法的新认识
Mar 05 Javascript
一个jquery实现的不错的多行文字图片滚动效果
Sep 28 Javascript
JQuery替换DOM节点的方法
Jun 11 Javascript
JQuery中DOM实现事件移除的方法
Jun 13 Javascript
浅谈JSON.parse()和JSON.stringify()
Jul 14 Javascript
微信小程序实现简单评论功能
Nov 28 Javascript
jQuery实现增删改查
Dec 22 jQuery
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类Class的概念
2012/06/14 PHP
thinkphp数据查询和遍历数组实例
2014/11/28 PHP
PHP const定义常量及global定义全局常量实例解析
2020/05/28 PHP
Javascript window对象详解
2014/11/12 Javascript
javascript自动切换焦点控制效果完整实例
2016/02/02 Javascript
表单中单选框添加选项和移除选项
2016/07/04 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
js绘制购物车抛物线动画
2020/11/18 Javascript
js实现放大镜特效
2017/05/18 Javascript
layui点击按钮页面会自动刷新的解决方案
2019/10/25 Javascript
详解ES6 扩展运算符的使用与注意事项
2020/11/12 Javascript
Python上下文管理器和with块详解
2017/09/09 Python
Django框架模板介绍
2019/01/15 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
解决Django后台ManyToManyField显示成Object的问题
2019/08/09 Python
python 中xpath爬虫实例详解
2019/08/26 Python
Python 实现取多维数组第n维的前几位
2019/11/26 Python
Python实现验证码识别
2020/06/15 Python
Selenium webdriver添加cookie实现过程详解
2020/08/12 Python
python 获取字典键值对的实现
2020/11/12 Python
CSS3 实现的火焰动画
2020/12/07 HTML / CSS
html5中如何将图片的绝对路径转换成文件对象
2018/01/11 HTML / CSS
选购国际女性时装设计师品牌:IFCHIC(支持中文)
2018/04/12 全球购物
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
业务总经理岗位职责
2014/02/03 职场文书
推荐信怎么写
2014/05/09 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
大学专科求职信
2014/07/02 职场文书
党员个人公开承诺书
2014/08/29 职场文书
党员群众路线教育实践活动学习笔记
2014/11/05 职场文书
南湾猴岛导游词
2015/02/09 职场文书
库房管理员岗位职责
2015/02/12 职场文书
写给同学的新学期寄语
2015/02/27 职场文书
销售辞职信范文
2015/03/02 职场文书
Python中使用subprocess库创建附加进程
2021/05/11 Python
Python利用capstone实现反汇编
2022/04/06 Python