GruntJSrecursion通配差异

GruntJS节点通配中的**/*.js 。js和{,*/}*.js 。js有什么区别?

GruntJS使用基于globbing模式的节点glob库。

基于此, *将具有下一个意义:

  • path/* – 在path所有文件和文件夹 recoursive
  • path/** – recursionpath所有内容
  • path/*.* – 具有名称的所有文件和文件夹; 匹配file.txt.gitignorenoExtension. 等等

为了说明一下,你可以阅读这篇关于glob模式的文章。

在他们有Glob Primer的文档中,有一个例子:

在parsingpath部分模式之前,支撑部分被扩展为一个集合。 带括号的部分以{开始并以}结尾,其中包含任意数量的以逗号分隔的部分。 支撑部分可能包含斜线字符,所以a{/b/c,bcd}将展开为a/b/cabcd

这正是你的情况{,*/}*.js

我强烈推荐使用语法** (在你的情况下,它是**/*.js .js仅用于过滤.js文件),当你需要迭代pathrecursion