使用gulp.src()来包含除第三方目录以外的所有文件 [英] Using gulp.src() to include all files EXCEPT js files NOT in 3rd party dir

查看:211
本文介绍了使用gulp.src()来包含除第三方目录以外的所有文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图复制所有不在目录 3rd 中的js文件。

是我在做什么:

  return gulp.src([
'src / ** / *',
'!src / ** / *。js',//没有来自src的js文件
'src / ** / 3rd / *。js'//确保通过$获得第三方js文件
])
.pipe(gulp.dest('dist'));

然而,这并不会复制任何js文件:(


gulp.src()的gulp 3.x小节不按顺序进行评估,这意味着它是不可能排除一组文件,然后重新包含排除文件的一个子集。



这可以通过即将发布的gulp 4.0


<传递给gulp.src的p> globs将按顺序进行评估,这意味着这可能是 gulp.src(['* .js','!b * .js','bad.js'] )(排除以 b 开头的每个JS文件, bad.js )


对于gulp 3.x,有 gulp-src-ordered-globs 可用于替换常规 gulp.src()

  var gulpSrc = require('gulp-src-ordered-globs'); 

return gulpSrc([
'src / ** / *',
'!src / ** / *。js',//没有来自src的js文件
'src / ** / 3rd / *。js'//务必通过
]获得第三方js文件)
.pipe(gulp.dest('dist'));


I am trying to copy all files EXCEPT js files that are not in the directory 3rd.

This is what I was doing:

return gulp.src([
        'src/**/*',
        '!src/**/*.js', // no js files from src
        'src/**/3rd/*.js' // make sure to get 3rd party js files though
    ])
    .pipe(gulp.dest('dist'));

However this would not copy ANY js files :(

解决方案

In gulp 3.x globs passed to gulp.src() are not evaluated in order. That means it is not possible to exclude a set of files and then reinclude a subset of the excluded files.

This will be possible with the upcoming gulp 4.0:

globs passed to gulp.src will be evaluated in order, which means this is possible gulp.src(['*.js', '!b*.js', 'bad.js']) (exclude every JS file that starts with a b except bad.js)

For gulp 3.x there is the gulp-src-ordered-globs package which can be used in place of the regular gulp.src():

var gulpSrc = require('gulp-src-ordered-globs');

return gulpSrc([
    'src/**/*',
    '!src/**/*.js', // no js files from src
    'src/**/3rd/*.js' // make sure to get 3rd party js files though
  ])
  .pipe(gulp.dest('dist'));

这篇关于使用gulp.src()来包含除第三方目录以外的所有文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆