看看使用gulp-tap的最简单的Gulp任务:
var gulp = require('gulp');
var tap = require('gulp-tap');
gulp.task('mytask', function () {
return gulp.src("src/*/*.js")
.pipe(tap(function (file) {
file.contents = new Buffer('blabla');
}))
.pipe(gulp.dest('./dist'));
});
它从src
目录中获取文件,用"blabla"替换内容,并将那些"损坏"的文件保存到"dist"目录中。这很容易!
但是,如果我们有流而不是"blabla"呢?例如:
var gulp = require('gulp');
var tap = require('gulp-tap');
var jsdocParse= require("jsdoc-parse");
gulp.task('jsdoc', function () {
return gulp.src("src/*/*.js")
.pipe(tap(function (file) {
var stream = jsdocParse(file.path);
file.contents = ???;
}))
.pipe(gulp.dest('./dist'));
});
试试这个:
gulp.task('mytask', function () {
return gulp.src("src/*.js")
.pipe(tap(function (file, t) {
file.contents = Buffer.concat([
jsdocParse(file.path)
]);
}))
.pipe(gulp.dest('./dist'));
});