【发布时间】:2017-01-15 14:28:40
【问题描述】:
我在 gulp 任务中有一组可写流。我想合并它们并返回一个流。我正在使用合并流节点模块来执行此操作。我收到以下错误。
[14:22:56] Error: Cannot pipe, not readable
at WriteStream.Writable.pipe (_stream_writable.js:161:22)
at add (C:\workspace\mediafly-viewer\desktop\node_modules\merge-stream\index.js:28:12)
at Array.forEach (native)
是否支持合并可写流?如果是这样,我该怎么做?
这是我尝试过的承诺。
const promises = streams.map(s => new Promise((resolve, reject) => s.on('finish', resolve).on('error', reject)));
return Promise.all(promises);
【问题讨论】:
-
您不能将不可读(例如只写)流通过管道传输到可写流中。您会考虑将一个可写流转换为
transform(双工)流还是不可能? -
其实我也不确定。目标是在所有流完成写入时得到通知。我能够通过承诺完成这项工作,但它不是很干净。在这里发布它作为可能的解决方案。
标签: node.js gulp node.js-stream