详解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 相关文章推荐
javascript setTimeout和setInterval 的区别
Dec 08 Javascript
JS代码优化技巧之通俗版(减少js体积)
Dec 23 Javascript
Struts2的s:radio标签使用及用jquery添加change事件
Apr 08 Javascript
jQuery中wrapInner()方法用法实例
Jan 16 Javascript
js实现仿爱微网两级导航菜单效果代码
Aug 31 Javascript
学习JavaScript设计模式(继承)
Nov 26 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
May 24 Javascript
jQuery网页定位导航特效实现方法
Dec 19 Javascript
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
Apr 14 jQuery
在原生不支持的旧环境中添加兼容的Object.keys实现方法
Sep 11 Javascript
vuex state中的数组变化监听实例
Nov 06 Javascript
elementUI同一页面展示多个Dialog的实现
Nov 19 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 函数中使用static的说明
2012/06/01 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
2013/06/13 PHP
php格式化金额函数分享
2015/02/02 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
2013/05/13 Javascript
JS实现关键字搜索时的相关下拉字段效果
2014/08/05 Javascript
node.js中的fs.realpath方法使用说明
2014/12/16 Javascript
JavaScript更改字符串的大小写
2015/05/07 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
概述jQuery中的ajax方法
2016/12/16 Javascript
js 实现省市区三级联动菜单效果
2017/02/20 Javascript
JS验证字符串功能
2017/02/22 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
2017/06/13 Javascript
JS与HTML结合实现流程进度展示条思路详解
2017/09/03 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
vue-form表单验证是否为空值的实例详解
2019/10/29 Javascript
js实现搜索提示框效果
2020/09/05 Javascript
使用js原生实现年份轮播选择效果实例
2021/01/12 Javascript
Python获取Linux系统下的本机IP地址代码分享
2014/11/07 Python
Python 两个列表的差集、并集和交集实现代码
2016/09/21 Python
python实现图像随机裁剪的示例代码
2020/12/10 Python
HTML中meta标签及Keywords
2020/04/15 HTML / CSS
Antonioli美国在线商店:时尚前卫奢华
2019/07/29 全球购物
致接力运动员广播稿
2014/02/17 职场文书
《回乡偶书》教学反思
2014/04/12 职场文书
食堂标语大全
2014/06/11 职场文书
宣传口号大全
2014/06/16 职场文书
电大奖学金获奖感言
2014/08/14 职场文书
工作证明范本(2篇)
2014/09/14 职场文书
居委会四风问题个人对照检查材料
2014/09/25 职场文书
遗嘱范文
2015/08/07 职场文书
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python
Golang连接并操作MySQL
2022/04/14 MySQL