在 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());
最佳答案
虽然肯定有更清洁的解决方案,但当我不想为 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()。
可能有一些库可以做同样的事情。
关于Gulp:如何查看 glob 的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26011168/