有没有办法复制或传播Node.js可读流,以便可以独立于同一来源使用流?
我的用例看起来像这样:
f(inputStream, callback(err, data) {
// do stuff with data to change how g behaves
g(inputStream);
});
要求是f
和g
从流的开头开始读取。我通常在这里使用readable.pipe
,但g
需要在回调中使用。
答案 0 :(得分:0)
您可以将相同的可读流传递给f和g。他们将从流中独立阅读。
例如: -
var fs = require('fs');
var str = fs.createReadStream('<file location>');
function f(s) {
s.on('data', function (d) {
console.log(d.toString());
});
s.on('end', function() {
console.log('ended');
});
}
function g(s) {
s.on('data', function (d) {
console.log(d.toString());
});
s.on('end', function() {
console.log('ended');
});
}
g(str);
f(str);
&#13;