Mr *_*old 5 javascript pipe node.js chain
例如,我有这个:
var r = fs.createReadStream('file.txt');
var z = zlib.createGzip();
var w = fs.createWriteStream('file.txt.gz');
r.pipe(z).pipe(w);
Run Code Online (Sandbox Code Playgroud)
我想在 r.pipe(z).pipe(w) 完成后做点什么。我试过这样的事情:
var r = A.pipe(B);
r.on('end', function () { ... });
Run Code Online (Sandbox Code Playgroud)
但它不适用于管道链。我怎样才能让它工作?
您正在寻找finish活动。从文档:
当 end() 方法已被调用,并且所有数据都已刷新到底层系统时,将发出此事件。
当源流发出 时end,它会调用end()目标,在您的情况下,它是B。所以你可以这样做:
var r = A.pipe(B);
r.on('finish', function () { ... });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1694 次 |
| 最近记录: |