配置Grunt的Task时通配符支持和动态生成文件名问题


Posted in Javascript onSeptember 06, 2015
copy: { 
  // 这是Task里的其中一个Target 
  dests: { 
   expand: true, 
   cwd: '<%=config.app%>/newFolder', 
   src: ['**/{a*,b*}.html'], 
   dest: '<%=config.dist%>/newFolder', 
   ext: ".shtml", 
   extDot: "first", 
   flatten:true, //去掉中间上当,下面的rename可以再找回来 
   rename: function( dest, fileName ) { 
    return dest + "/" +fileName; 
   } 
  } 
 }

通配符支持:由nodejs内置的node-glob库支持,这些都可以用在上面所说的各种文件配置中

1、*匹配任何字符,除了/

2、?匹配单个字符,除了/

3、**匹配任何字符,包括/,所以用在目录路径里面

4、{}逗号分割的“或”操作(逗号后面不要有空格)

5、! 排除某个匹配

动态生成文件名:

expand 设置为true打开以下选项,如果设为true,就表示下面文件名的占位符(即*号)都要扩展成具体的文件名。

cwd 所有src指定的文件相对于这个属性指定的路径,需要处理的文件(input)所在的目录

src 要匹配的路径,相对与cwd,表示需要处理的文件。如果采用数组形式,数组的每一项就是一个文件名,可以使用通配符

dest 生成的目标路径前缀,表示处理后的文件名或所在目

ext 表示处理后的文件后缀名。替换所有生成的目标文件后缀为这个属性

extDot:first:表示以文件名后的第一个点后面开始作为后缀名;last:表示以文件名后的最后一个点后面开始作为后缀名

flatten:删除所有生成的dest的路径部分,值为boolean类型(true、false)用来指定是否保持文件目录结构,true是保持文件目录

rename 一个函数,接受匹配到的文件名,和匹配的目标位置,返回一个新的目标路径

以上就是本文给大家介绍的在配置Grunt的Task时通配符支持和动态生成文件名问题,希望对大家有所帮助。

Javascript 相关文章推荐
ie中js创建checkbox默认选中问题探讨
Oct 21 Javascript
纯js分页代码(简洁实用)
Nov 05 Javascript
js判断页面中是否有指定控件的简单实例
Mar 04 Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 Javascript
jQuery链使用指南
Jan 20 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
Jan 30 Javascript
jQuery实现获取元素索引值index的方法
Sep 18 Javascript
JavaScript实现多栏目切换效果
Dec 12 Javascript
jQuery操作json常用方法示例
Jan 04 Javascript
ajax实现动态下拉框示例
Jan 10 Javascript
微信小程序商品详情页规格属性选择示例代码
Oct 30 Javascript
vue-router重定向和路由别名的使用讲解
Jan 19 Javascript
基于jquery实现的树形菜单效果代码
Sep 06 #Javascript
jQuery.extend 函数及用法详细
Sep 06 #Javascript
jquery动态导航插件dynamicNav用法实例分析
Sep 06 #Javascript
jquery实现可自动收缩的TAB网页选项卡代码
Sep 06 #Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
Sep 06 #Javascript
js实现简洁的TAB滑动门效果代码
Sep 06 #Javascript
js实现左侧网页tab滑动门效果代码
Sep 06 #Javascript
You might like
Joomla下利用configuration.php存储简单数据
2010/05/19 PHP
PHP学习之字符串比较和查找
2011/04/17 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
JavaScript高级程序设计 错误处理与调试学习笔记
2011/09/10 Javascript
IE和Firefox的Javascript兼容性总结[推荐收藏]
2011/10/19 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
jQuery实现网站添加高亮突出显示效果的方法
2015/06/26 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
2016/05/24 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
2016/12/13 Javascript
根据Bootstrap Paginator改写的js分页插件
2016/12/25 Javascript
js实现表格筛选功能
2017/01/18 Javascript
Angular 4依赖注入学习教程之ValueProvider的使用(七)
2017/06/04 Javascript
js将当前时间格式化为 年-月-日 时:分:秒的实现代码
2018/01/20 Javascript
node打造微信个人号机器人的方法示例
2018/04/26 Javascript
JavaScript折半查找(二分查找)算法原理与实现方法示例
2018/08/06 Javascript
Nuxt配合Node在实际生产中的应用详解
2018/08/07 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
Python抓取Discuz!用户名脚本代码
2013/12/30 Python
Python去掉字符串中空格的方法
2014/03/11 Python
在Python中测试访问同一数据的竞争条件的方法
2015/04/23 Python
详解Python发送邮件实例
2016/01/10 Python
pycharm+django创建一个搜索网页实例代码
2018/01/24 Python
python读取csv文件指定行的2种方法详解
2020/02/13 Python
python3 使用openpyxl将mysql数据写入xlsx的操作
2020/05/15 Python
python中列表的含义及用法
2020/05/26 Python
利用Python实现斐波那契数列的方法实例
2020/07/26 Python
详解HTML5 LocalStorage 本地存储
2016/12/23 HTML / CSS
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
编码实现字符串转整型的函数
2012/06/02 面试题
如何判断一段程序是由C 编译程序还是由C++编译程序编译的
2013/08/04 面试题
马云的职业生涯规划之路
2014/01/01 职场文书
大专学生求职信
2014/07/04 职场文书
售后服务承诺函格式
2015/01/21 职场文书
单位领导婚礼致辞
2015/07/28 职场文书
Python OpenGL基本配置方式
2022/05/20 Python