我的代码遇到了一些流问题,我不知道如何修复 .
代码摘录:http://gist.github.com/5689522
本质上,我在传递数据时遇到了问题,因为我在第一个流(S0)上使用了push而没有被转换,因此只是将数据直接输入到第二个流(S1),并导致错误 . 通常我会使用 .pipe()
来连接流,但我不知道如何从变换流内部做到这一点,因为我想管道输入而不是输出,而 _transform
函数只给出一个块(缓冲区)作为论点 .
任何想法如何做这样的事情?
我的代码遇到了一些流问题,我不知道如何修复 .
代码摘录:http://gist.github.com/5689522
本质上,我在传递数据时遇到了问题,因为我在第一个流(S0)上使用了push而没有被转换,因此只是将数据直接输入到第二个流(S1),并导致错误 . 通常我会使用 .pipe()
来连接流,但我不知道如何从变换流内部做到这一点,因为我想管道输入而不是输出,而 _transform
函数只给出一个块(缓冲区)作为论点 .
任何想法如何做这样的事情?
2 回答
你需要一起收集块
然后重新分配_flush功能:
所以一起:
从
push
的文档:既然你没有在
ParserStream
的实现中调用它,你不应该调用_s0Stream.push
,你应该做_s0Stream.write
. 在这种情况下,你可能也想传递done
回调 .