详解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与firefox之jquery用法区别
Oct 03 Javascript
js 与或运算符 || && 妙用
Dec 09 Javascript
JavaScript DOM 编程艺术(第2版)读书笔记(JavaScript的最佳实践)
Oct 01 Javascript
jquery数组之存放checkbox全选值示例代码
Dec 20 Javascript
DEDECMS如何为文章添加HOT NEW标志图片
Aug 14 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
Oct 12 Javascript
jQuery基本选择器(实例及表单域value的获取方法)
May 20 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
Aug 11 Javascript
JavaScript+Canvas实现彩色图片转换成黑白图片的方法分析
Jul 31 Javascript
使用vue for时为什么要key【推荐】
Jul 11 Javascript
Vue登录主页动态背景短视频制作
Sep 21 Javascript
原生js实现随机点餐效果
Dec 10 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使用cookie实现记住用户名和密码实现代码
2015/04/27 PHP
微信支付扫码支付php版
2016/07/22 PHP
PHP基于简单递归函数求一个数阶乘的方法示例
2017/04/26 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
js 分页全选或反选标识实现代码
2011/08/09 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
2015/09/16 Javascript
jQuery中serializeArray()与serialize()的区别实例分析
2015/12/09 Javascript
jquery插件jquery.dragscale.js实现拖拽改变元素大小的方法(附demo源码下载)
2016/02/25 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
微信小程序 require机制详解及实例代码
2016/12/14 Javascript
react-router实现按需加载
2017/05/09 Javascript
详解webpack 多入口配置
2017/06/16 Javascript
微信小程序文章详情页面实现代码
2018/09/10 Javascript
vue实现鼠标移入移出事件代码实例
2019/03/27 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
JavaScript直接调用函数与call调用的区别实例分析
2020/05/22 Javascript
小程序实现多个选项卡切换
2020/06/19 Javascript
python中元类用法实例
2014/10/10 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
浅谈python字符串方法的简单使用
2016/07/18 Python
Django实现表单验证
2018/09/08 Python
python如何爬取网站数据并进行数据可视化
2019/07/08 Python
Django上线部署之IIS的配置方法
2019/08/22 Python
Django的CVB实例详解
2020/02/10 Python
webView加载html图片遇到的问题解决
2019/10/08 HTML / CSS
Notino意大利:购买香水和化妆品
2018/11/14 全球购物
出纳员岗位责任制
2014/02/11 职场文书
工程售后服务承诺书
2014/05/21 职场文书
化学教育专业自荐信
2014/07/04 职场文书
二人合伙经营协议书
2014/09/13 职场文书
奖励通知
2015/04/22 职场文书
2016年妇联“6﹒26国际禁毒日”宣传活动总结
2016/04/05 职场文书
MySQL完整性约束的定义与实例教程
2021/05/30 MySQL
关于Python中进度条的六个实用技巧分享
2022/04/05 Python