配置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 相关文章推荐
关于JavaScript中原型继承中的一点思考
Jul 25 Javascript
javascript从右边截取指定字符串的三种实现方法
Nov 29 Javascript
jquery解析JSON数据示例代码
Mar 17 Javascript
详解JavaScript中|单竖杠运算符的使用方法
May 23 Javascript
jquery通过name属性取值的简单实现方法
Jun 20 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
Jul 18 Javascript
jQuery post数据至ashx实例详解
Nov 18 Javascript
DOM 事件的深入浅出(一)
Dec 05 Javascript
jQuery.cookie.js使用方法及相关参数解释
Mar 06 Javascript
JS实现的input选择图片本地预览功能示例
Aug 29 Javascript
JavaScript数组去重的几种方法
Apr 07 Javascript
javascript单张多张图无缝滚动实例代码
May 10 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
PHP $_SERVER详解
2009/01/16 PHP
PHP parse_url 一个好用的函数
2009/10/03 PHP
php生成的html meta和link标记在body标签里 顶部有个空行
2010/05/18 PHP
服务器变量 $_SERVER 的深入解析
2013/07/02 PHP
用javascript操作xml
2006/11/04 Javascript
lib.utf.js
2007/08/21 Javascript
一个js的tab切换效果代码[代码分离]
2010/04/11 Javascript
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
JS实现点击下载的小例子
2013/07/10 Javascript
node.js中的http.createServer方法使用说明
2014/12/14 Javascript
在JavaScript中使用对数Math.log()方法的教程
2015/06/15 Javascript
JavaScript微信定位功能实现方法
2016/11/29 Javascript
Bootstrap进度条实现代码解析
2017/03/07 Javascript
JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
2017/03/25 Javascript
JavaScript+CSS相册特效实例代码
2017/09/07 Javascript
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
解决vue初始化项目一直停在downloading template的问题
2020/11/09 Javascript
详解template标签用法(含vue中的用法总结)
2021/01/12 Vue.js
python使用邻接矩阵构造图代码示例
2017/11/10 Python
python 实现检验33品种数据是否是正态分布
2019/12/09 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
Python关于反射的实例代码分享
2020/02/20 Python
TensorFlow2.X结合OpenCV 实现手势识别功能
2020/04/08 Python
Python定时任务APScheduler安装及使用解析
2020/08/07 Python
Python爬虫逆向分析某云音乐加密参数的实例分析
2020/12/04 Python
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
2020/11/10 HTML / CSS
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
Carolina工作鞋官网:Carolina Footwear
2019/03/14 全球购物
Linux如何修改文件和文件夹的权限
2013/09/05 面试题
大学生简历的个人自我评价
2013/12/04 职场文书
幼儿园毕业家长感言
2014/02/10 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
关于旅游的活动方案
2014/08/15 职场文书
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang