如何获取gulp.src()中的当前文件名?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

在我的gup.js文件中,我从examples文件夹进入build文件夹。

创建GUMP任务并不困难:

var gulp = require('gulp');

gulp.task('examples', function() {
    return gulp.src('./examples/*.html')
        .pipe(gulp.dest('./build'));
});

但我不知道如何检索任务中找到(和处理)的文件名,或者找不到正确的插件。

提问于
用户回答回答于

我不知道你想如何使用文件名,但其中的一个应该有所帮助:

  • 如果你只想查看名称,可以使用类似的内容gulp-debug,列出乙烯基文件的详细信息。插入这个你想要一个列表的任何地方,像这样: var gulp = require('gulp'), debug = require('gulp-debug'); gulp.task('examples', function() { return gulp.src('./examples/*.html') .pipe(debug()) .pipe(gulp.dest('./build')); });
  • 另一种选择是gulp-filelog,我没有用过,但听起来很相似(可能会更清洁一些)。
  • 另一种选择是gulp-filesize输出文件和它的大小。
  • 如果你想要更多的控制,你可以使用类似的东西gulp-tap,它可以让你提供自己的功能并查看管道中的文件。
用户回答回答于

我发现这个插件正在做我期待的东西:gulp-using

简单的使用示例:使用.jsx扩展名搜索项目中的所有文件

gulp.task('reactify', function(){
        gulp.src(['../**/*.jsx']) 
            .pipe(using({}));
        ....
    });

输出:

[gulp] Using gulpfile /app/build/gulpfile.js
[gulp] Starting 'reactify'...
[gulp] Finished 'reactify' after 2.92 ms
[gulp] Using file /app/staging/web/content/view/logon.jsx
[gulp] Using file /app/staging/web/content/view/components/rauth.jsx

扫码关注云+社区