Node.js 吞咽管最小功能?
什么是最小的功能,可以放在一个吞咽管,仍然工作 这不起作用:Node.js 吞咽管最小功能?,node.js,gulp,Node.js,Gulp,什么是最小的功能,可以放在一个吞咽管,仍然工作 这不起作用: gulp.src('**') .pipe(function() { // what's the minimum that can go here and still be a functional pipe? // what needs to be returned? }); 理想情况下,这将是香草JS,只使用Gulp构建的基础模块;乙烯基、贯穿等。管道的问题是,由于不返回文件,您正在删除glob的文件 使
gulp.src('**')
.pipe(function() {
// what's the minimum that can go here and still be a functional pipe?
// what needs to be returned?
});
理想情况下,这将是香草JS,只使用Gulp构建的基础模块;乙烯基、贯穿等。管道的问题是,由于不返回文件,您正在删除glob的文件 使用,您可以执行以下操作:
const-through=require('through2')
咕噜咕噜咕噜(“**”)
.pipe(通过.obj((文件,enc,cb)=>cb(null,file)))
是的,已经过了4年,但我想我应该加入我的解决方案,因为我一直在寻找相同的答案
我想要一些简单的、模块化的pipe
函数,我可以在几个不同的任务中重用这些函数,而不需要过度依赖。这可能不是一个优雅的解决方案,但它可以:
const gulp = require('gulp');
var someFlag = true;
gulp.task('default', doTask);
function doTask(done) {
let stream = gulp.src(['file.txt'])
.pipe(/* some gulp plugin here */);
if (someFlag) {
stream = alterStream(stream);
}
return stream;
}
function alterStream(stream) {
stream.pipe(/* another gulp plugin here */);
return stream;
}
我不是首先直接返回流(
return gulp.src(…)
),而是将其存储在变量中,然后根据需要使用其他管道对其进行更改,最后返回。谢谢。我想我的困惑是因为误解了.pipe()
,它需要的是流而不是函数。@WhatIsHeDoing感谢您的编辑!虽然我更喜欢链接到github repo,但我修改了它:)