【问题标题】:Get all files except minified files in gulp.src获取 gulp.src 中除缩小文件外的所有文件
【发布时间】:2015-06-20 11:40:11
【问题描述】:

我尝试选择除缩小文件外的所有文件。

我有这个文件结构:

lib/
    angular/
        angular.js
        angular.min.js
    lodash/
        lodash.js
        lodash.min.js

我试试这个:

var pattern = ["./lib/**/*!(.min).*"];
gulp.src(pattern).pipe(using({}));

但这不起作用:我得到所有文件,即使它们被缩小了。

(通过 gulp-using 我得到:

[gulp] Using file ./lib/angular/angular.js
[gulp] Using file ./lib/angular/angular.min.js
[gulp] Using file ./lib/lodash/lodash.js
[gulp] Using file ./lib/lodash/lodash.min.js

)

有什么想法吗?

提前感谢您的帮助

【问题讨论】:

    标签: gulp glob minimatch


    【解决方案1】:

    我知道这个问题已在 3 年前提出, 但我会发布这个答案,所以它可能会帮助其他人。

    var pattern = ["./lib/**/!(*.min)*.js"];
    

    如果您需要添加多个排除项,例如,您想要排除 fileName.js*.spec 以及所有 *.min 文件,您可以使用 |

    var pattern = ["./lib/**/!(fileName|*.spec|*.min)*.js"];
    

    【讨论】:

      【解决方案2】:

      改变模式

      var pattern = ["./lib/**/*", "!./lib/**/*.min.*"];
      

      这读作“获取 lib 下任何位置的所有文件,然后排除 lib 下具有 '.min' 的文件。”以他们的名义”

      【讨论】:

      • 是的,这行得通。但事实上,我需要否定这种模式以获得更复杂的表达式。所以我需要把它写成一个字符串
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-15
      • 2015-08-14
      • 2015-12-25
      • 2014-04-29
      • 2015-10-13
      • 2023-04-06
      相关资源
      最近更新 更多