详解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 相关文章推荐
如何快速的呈现我们的网页的技巧整理
Jul 01 Javascript
JavaScript CSS修改学习第一章 查找位置
Feb 19 Javascript
JavaScript插件化开发教程 (三)
Jan 27 Javascript
js中setTimeout()与clearTimeout()用法实例浅析
May 12 Javascript
jquery实现点击展开列表同时隐藏其他列表
Aug 10 Javascript
jsonp跨域获取数据的基础教程
Jul 01 Javascript
JavaScript事件发布/订阅模式原理与用法分析
Aug 21 Javascript
vue+iview/elementUi实现城市多选
Mar 28 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
Apr 10 Javascript
Layui Table js 模拟选中checkbox的例子
Sep 03 Javascript
vue props 单项数据流实例分享
Feb 16 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
Aug 11 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
收音机指标测试方法及仪器
2021/03/01 无线电
php 全文搜索和替换的实现代码
2008/07/29 PHP
zend framework框架中url大小写问题解决方法
2014/08/19 PHP
php数组使用规则分析
2015/02/27 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
php使用正则表达式去掉html中的注释方法
2016/11/03 PHP
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
js+div实现图片滚动效果代码
2014/02/10 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
js+css实现文字散开重组动画特效代码分享
2015/08/21 Javascript
jQuery easyui刷新当前tabs的方法
2016/09/23 Javascript
老生常谈JavaScript中的this关键字
2016/10/01 Javascript
浅谈Nodejs中的作用域问题
2016/12/26 NodeJs
js实现表格筛选功能
2017/01/18 Javascript
如何使用vuejs实现更好的Form validation?
2017/04/07 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
IntelliJ IDEA 安装vue开发插件的方法
2017/11/21 Javascript
微信小程序实践之动态控制组件的显示/隐藏功能
2018/07/18 Javascript
Node.js操作系统OS模块用法分析
2019/01/04 Javascript
vuex vue简单使用知识点总结
2019/08/29 Javascript
Vue替代marquee标签超出宽度文字横向滚动效果
2019/12/09 Javascript
Python实现获取前100组勾股数的方法示例
2018/05/04 Python
Django后台admin的使用详解
2019/07/08 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
Manuka Doctor英国官网:真正的麦卢卡蜂蜜和护肤品
2018/10/26 全球购物
英语师范专业毕业生自荐信
2013/09/21 职场文书
岗位职责的构建方法
2014/02/01 职场文书
优秀公益广告词大全
2014/03/19 职场文书
年会邀请函范文
2015/01/30 职场文书
签证工作证明模板
2015/06/15 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python
div与span之间的区别与使用介绍
2021/12/06 HTML / CSS
node快速搭建后台的实现步骤
2022/02/18 NodeJs
SQL Server远程连接的设置步骤(图文)
2022/03/23 SQL Server
阿里云k8s服务升级时502错误 springboot项目应用
2022/04/09 Servers