2016-03-20 6 views
1

私はいくつかのストリームを返す機能を持っている:Node.jsいくつかのストリーム(配列またはチェーン)をパイプに渡す方法は?

// function 
var s1 = through.obj({highWaterMark: 2}, function(data, enc, next) { 
    console.log("A: "+data); 
    next(null, "A"); 
}); 

var s2 = through.obj({highWaterMark: 2}, function(data, enc, next) { 
    console.log("B: "+data); 
    next(null, "B"); 
}); 

return [s1, s2]; 
// or chain: 
// s1.pipe(s2); 
// return s1; 

私はパイプに関数の結果を渡したい:

gulp.src(...).pipe(...).pipe(getStreams()).pipe(gulp.dest...); 

は、このような操作を行うための方法はありますか?

それとも、私は次のようにsomethigできますか?

​​

答えて

0

あなたはmerge-streamモジュールを使用することができます。

const mergeStream = require('merge-stream'); 
gulp.src(...).pipe(...).pipe(mergeStream(s1, s2)).pipe(gulp.dest...); 
+0

マージ・ストリームは動作しません。私はそれがobjストリームではないと思う。 – wishmaster35

+0

objストリームにもmerge-streamを使用できます。私はあなたの問題を誤解したと思う。 'src.pipe(getStreams())。pipe(dest)'、getStreams()はストリームの連鎖を返しますか? – lxe

+0

getStreams()は、いくつかのストリームを返す必要があります。同じことが、鎖か別の方法で結合されます。私の例を見てください:http://plnkr.co/edit/ufSKTaUh7fWkzuJhFrQU?p=catalogue – wishmaster35

関連する問題