利用gulp-if用文件名为条件做过滤

作者: jacques_迹远 | 来源:发表于2017-07-03 17:06 被阅读679次

最近在给公司的项目做版本管理,由于我们项目的奇葩性,框架的特性,以及我们gulpfile本身的复杂性,让这个工作进行得非常困难且痛苦,好在最终是解决了问题。中间各种绞尽脑汁的不尽述,把这个有参考价值的点拿出来跟大家分享一下。

当时有个要做的事情是,对一个文件夹中的某些js做文件名替换,目录结构大致如下:

|----src
|--------test.js
|--------testTpl.js
|--------test2.js
|--------test2Tpl.js
.....
我们要执行一个gulp任务,把名字中有tpl的文件找出来做代码内容中的文件版本替换。这里需要对当前目录的文件做过滤,但是gulp的node-glob语法决定了它只支持目录、文件类型的过滤。我们需要的是对文件名做过滤的东西,因此需要做条件判断的插件

搜索得到gulp-if,这个gulp插件给我们提供了gulp操作中条件设置的可能,官网的示例代码只是做了简单的true/false的判断来选择性处理某些流程,比较简单。

官网示例代码

condition这个函数接收file值,然后通过逻辑代码的判断,返回true/false就可以达到目的。但是我们这个是对文件名的判断,遍访资源也没有看到这种做法的案例。最后想起gulp的path模块是可以获取当前路径的,当然也就包括文件名啦。最终顺利的用path+gulp-if对文件名的判断,过滤掉了不需要操作的文件,完成任务。示例代码如下:

gulp-if示例代码

代码应该简单明了吧,希望能给大家一个参考。

ps:现在看着很简单的代码,当时是想了很久才想到的解决方案,也许当时超负荷的脑子太笨,也许大家从来不认为实现对文件名的过滤是什么难事,那麻烦能给我分享一下你的方法,非常感谢 (手动萌~^v^~

相关文章

  • 利用gulp-if用文件名为条件做过滤

    最近在给公司的项目做版本管理,由于我们项目的奇葩性,框架的特性,以及我们gulpfile本身的复杂性,让这个工作进...

  • JAVA中关于File类的操作

    创建文件夹跟文件 利用递归列出全部文件 文件过滤

  • 文件包含漏洞

    文件包含 常见文件包含函数 利用条件 程序用include()等文件包含函数通过动态变量的范式引入需要包含的文件 ...

  • SQL注入进阶

    绕过条件过滤 条件过滤,顾名思义就是黑名单机制,过滤掉符合条件的语句。因此我们要想办法绕过过滤,用其他方法来实现注...

  • Automator无法过滤文件

    当使用Automator过滤文件时候,无论条件多么宽松都无法过滤到任何文件。那么很有可能是spotlight的索引...

  • NSArray被遗忘的方法

    filter 过滤 利用谓词根据一定条件从一个数组中过滤数据 倒叙 makeObjectsPerformSelec...

  • IDEA使用.ignore插件

    1.安装.ignore插件 2.创建新过滤文件 3.添加过滤条件 4.最终效果

  • 任意文件查看与下载漏洞

    漏洞介绍 利用条件 漏洞危害 任意文件读取 代码形式可如下几种: 任意文件下载 直接下载: 用header()下载...

  • 文件上传漏洞小结

     web上传文件功能非常常见,但如果对上传的文件没有做安全过滤,黑客可能会利用上传功能上传恶意文件并执行,如:we...

  • 《Objective-C基础教程》读书笔记16—NSPredic

    Cocoa提供了一个名为NSPredicate的类,它用于指定过滤器的条件。可以创建NSPredicate对象,通...

网友评论

    本文标题:利用gulp-if用文件名为条件做过滤

    本文链接:https://www.haomeiwen.com/subject/ruqzcxtx.html