2

在 Gulp 中,我有一个要验证的 glob 模式。例如:

gulp.task('clean-requirejs', function() {
    return gulp.src([
        './public/res-min/**/*.js'
    ])
        .pipe(clean());
});

我想看看 glob['./public/res-min/**/*.js']是如何扩展的。如何打印gulp.src此示例中生成的参数/文件列表?

更新:原来有一个非常简单gulp-print的方法可以解决这样的工作:

var print = require('gulp-print').default;


[....]

.pipe(print());
4

2 回答 2

4

虽然肯定有更清洁的解决方案,但当我不想打扰 npm 安装任何新软件包时,我使用以下功能:

var through2 = require('through2');

function logFile(msg, lines) {
  lines = lines || 5;

  return through2.obj(function(file, enc, done) {
    console.log('logFile ' + msg);
    console.log(file.path);
    console.log(file.contents.toString().split('\n').splice(0,lines).join('\n'))
    this.push(file);
    done();
  });
}

然后,在你的任务中

return gulp.src('...').pipe(logFile('name-of-task',5)).pipe(...)

重要的部分是调用 this.push(file) 和 done()。

可能有一些图书馆可以做同样的事情。

于 2014-12-18T17:32:39.477 回答
0

事实证明Gulp-Debug正好适合这种情况。

例子:

$ npm install --save-dev gulp-debug

var debug = require('gulp-debug');


gulp.task('clean-requirejs', function() {
    return gulp.src([
        './public/res-min/**/*.js'
    ])
    .pipe(debug())
    .pipe(clean());
});
于 2016-12-01T17:52:29.943 回答