求问:在开发一个gulp插件时发现是否调用this.push(file)对gulp.src取得的文件结果有影响那么this.push(file)的主要作用是什么?为什么会影响gulp.src的结果?我直接gulp.src('./output/**/*.js') pipe(myPlugin());myPlugin里module.exports = function (options) { return through.obj(function (file, enc, cb) {
console.log(file.path);
// 这货是否存在影响了gulp.src()的结果,前面log的文件数量不一致
this.push(file);
cb();
};
};
1 回答
湖上湖
TA贡献2003条经验 获得超2个赞
文档是这么说的
我们现在假设你的./output/**/*.js
匹配到了两个文件,分别是:./output/a.js
和./output/b.js
当你执行如下代码时:
gulp.src('./output/**/*.js') .pipe(myPlugin()) .pipe(gulp.dest('dist'));
./output/a.js
和./output/b.js
都会被拷贝到dist
目录下。
那么如果你的myPlugin
里没有了this.push(file)
,你再试试,将不会有任何内容传递给gulp.dest('dist')
,也就是说,没有任何文件被拷贝到dist
目录了。
添加回答
举报
0/150
提交
取消