配置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 相关文章推荐
Opacity.js
Jan 22 Javascript
jQuery 位置插件
Dec 25 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
May 11 Javascript
jquery实现鼠标滑过小图时显示大图的方法
Jan 14 Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
Aug 03 Javascript
angularJs关于指令的一些冷门属性详解
Oct 24 Javascript
Vue组件化通讯的实例代码
Jun 23 Javascript
bootstrap实现二级下拉菜单效果
Nov 23 Javascript
vue中input的v-model清空操作
Sep 06 Javascript
javascript实现视频弹幕效果(两个版本)
Nov 28 Javascript
vue点击按钮动态创建与删除组件功能
Dec 29 Javascript
WebRTC记录音视频流(web技术分享)
Feb 24 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中文件上传的安全问题
2006/10/09 PHP
thinkphp模板继承实例简述
2014/11/26 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
tbody元素支持嵌套的注意方法
2007/03/24 Javascript
修复ie8&amp;chrome下window的resize事件多次执行
2011/10/20 Javascript
js取得url地址参数实例
2013/02/22 Javascript
extjs_02_grid显示本地数据、显示跨域数据
2014/06/23 Javascript
jQuery实现预加载图片的方法
2015/03/17 Javascript
javascript中的Function.prototye.bind
2015/06/25 Javascript
Jquery 分页插件之Jquery Pagination
2015/08/25 Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
2015/08/27 Javascript
理解Javascript的call、apply
2015/12/16 Javascript
jQuery+Pdo编写login登陆界面
2016/08/01 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
详解Vue.js Mixins 混入使用
2017/09/15 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
vue 录制视频并压缩视频文件的方法
2018/07/27 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
2020/02/20 Javascript
vue调用本地摄像头实现拍照功能
2020/08/14 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
用python写asp详细讲解
2013/12/16 Python
Python的垃圾回收机制深入分析
2014/07/16 Python
Django imgareaselect手动剪切头像实现方法
2015/05/26 Python
pycharm中连接mysql数据库的步骤详解
2017/05/02 Python
Python中optparser库用法实例详解
2018/01/26 Python
python django 原生sql 获取数据的例子
2019/08/14 Python
pycharm显示远程图片的实现
2019/11/04 Python
将自己的数据集制作成TFRecord格式教程
2020/02/17 Python
Python代码注释规范代码实例解析
2020/08/14 Python
CheapTickets香港机票预订网站:CheapTickets.hk
2019/06/26 全球购物
2014年向国旗敬礼活动方案
2014/09/27 职场文书
国庆阅兵观后感
2015/06/15 职场文书
2019年共青团工作条例最新版
2019/11/12 职场文书