详解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 相关文章推荐
表单项的name命名为submit、reset引起的问题
Dec 22 Javascript
IE 下的只读 innerHTML
Aug 21 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
Jun 26 Javascript
JSON相关知识汇总
Jul 03 Javascript
基于JavaScript创建动态Dom
Dec 08 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
Feb 25 Javascript
微信js-sdk界面操作接口用法示例
Oct 12 Javascript
解决ajax不能访问本地文件问题(利用js跨域原理)
Jan 24 Javascript
vue-router:嵌套路由的使用方法
Feb 21 Javascript
Angularjs上传文件组件flowjs功能
Aug 07 Javascript
vue项目首屏打开速度慢的解决方法
Mar 31 Javascript
vue 返回上一页,页面样式错乱的解决
Nov 14 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
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
ThinkPHP学习笔记(一)ThinkPHP部署
2014/06/22 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
2014/08/22 PHP
PHP网络操作函数汇总
2015/05/18 PHP
5款适合PHP使用的HTML编辑器推荐
2015/07/03 PHP
培养自己的php编码规范
2015/09/28 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
2015/12/02 PHP
php上传大文件设置方法
2016/04/14 PHP
PHP线程的内存回收问题
2016/07/08 PHP
css图片自适应大小
2007/11/28 Javascript
javascript 类定义的4种方法
2009/09/12 Javascript
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
2009/11/28 Javascript
JS实现类似51job上的地区选择效果示例
2016/11/17 Javascript
vue+axios+element ui 实现全局loading加载示例
2018/09/11 Javascript
react-navigation之动态修改title的内容
2018/09/26 Javascript
前端面试知识点目录一览
2019/04/15 Javascript
Python 返回汉字的汉语拼音
2009/02/27 Python
Python中exit、return、sys.exit()等使用实例和区别
2015/05/28 Python
Python字符串和字典相关操作的实例详解
2017/09/23 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
django框架模板语言使用方法详解
2019/07/18 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
如何使用python实现模拟鼠标点击
2020/01/06 Python
python中的 zip函数详解及用法举例
2020/02/16 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
Python几种常见算法汇总
2020/06/02 Python
Python爬虫获取op.gg英雄联盟英雄对位胜率的源码
2021/01/29 Python
详解如何解决canvas图片getImageData,toDataURL跨域问题
2018/09/17 HTML / CSS
DELPHI面试题研发笔试试卷
2015/11/08 面试题
给孩子的新年寄语
2014/04/08 职场文书
办公室打字员岗位职责
2014/04/16 职场文书
建筑专业毕业生求职信
2014/09/30 职场文书
民间借贷借条如何写
2015/05/26 职场文书
催款律师函范文
2015/05/27 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书
python如何查找列表中元素的位置
2022/05/30 Python