详解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 相关文章推荐
推荐10个超棒的jQuery工具提示插件
Oct 11 Javascript
基于jQuery的动态增删改查表格信息,可左键/右键提示(原创自Zjmainstay)
Jul 31 Javascript
Extjs实现进度条的两种便捷方式
Sep 26 Javascript
javascript 处理null及null值示例
Jun 09 Javascript
jQuery实现的一个tab切换效果内部还嵌有切换
Aug 10 Javascript
javascript字符串与数组转换汇总
May 26 Javascript
轻量级网页遮罩层jQuery插件用法实例
Jul 31 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
Nov 11 Javascript
JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)
Dec 13 Javascript
js实现多行文本框统计剩余字数功能
Mar 28 Javascript
微信小程序scroll-view锚点链接滚动跳转功能
Dec 12 Javascript
jQuery实现简易聊天框
Feb 08 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
Terran兵种介绍
2020/03/14 星际争霸
phpmyadmin出现Cannot start session without errors问题解决方法
2014/08/14 PHP
北京奥运官方网站幻灯切换效果flash版打包下载
2008/01/30 Javascript
JavaScript Date对象 日期获取函数
2010/12/19 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
jQuery.each()用法分享
2012/07/31 Javascript
javascript生成随机数方法汇总
2015/11/12 Javascript
jquery实现具有收缩功能的垂直导航菜单
2016/02/16 Javascript
JS获取复选框的值,并传递到后台的实现方法
2016/05/30 Javascript
javascript实现随机生成DIV背景色
2016/06/20 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
Vue如何从1.0迁移到2.0
2017/10/19 Javascript
微信小程序template模板实例详解
2017/10/27 Javascript
vue 1.0 结合animate.css定义动画效果
2018/07/11 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
mpvue+vant app搭建微信小程序的方法步骤
2019/02/11 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
nodejs使用socket5进行代理请求的实现
2020/02/21 NodeJs
javascript 设计模式之享元模式原理与应用详解
2020/04/08 Javascript
vue npm install 安装某个指定的版本操作
2020/08/11 Javascript
Python三级目录展示的实现方法
2016/09/28 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
2016/12/23 Python
Python+matplotlib绘制不同大小和颜色散点图实例
2018/01/19 Python
django输出html内容的实例
2018/05/27 Python
示例详解Python3 or Python2 两者之间的差异
2018/08/23 Python
python 中如何获取列表的索引
2019/07/02 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
python利用xpath爬取网上数据并存储到django模型中
2021/02/26 Python
销售文员的岗位职责
2013/11/20 职场文书
小学家长会邀请函
2014/01/23 职场文书
法制宣传口号
2014/06/16 职场文书
专职安全员岗位职责
2015/04/11 职场文书
投资公司董事长岗位职责
2015/04/16 职场文书
研究生论文答辩开场白
2015/05/27 职场文书
横空出世观后感
2015/06/09 职场文书