A write stream constructor that supports a flush function that is called before finish is emitted
npm install flush-write-stream
varwriter=require('flush-write-stream')varws=writer(write,flush)ws.on('finish',function(){console.log('finished')})ws.write('hello')ws.write('world')ws.end()functionwrite(data,enc,cb){// i am your normal ._write methodconsole.log('writing',data.toString())cb()}functionflush(cb){// i am called before finish is emittedsetTimeout(cb,1000)// wait 1 sec}If you run the above it will produce the following output
writing hello
writing world
(nothing happens for 1 sec)
finished
Create a new writable stream. Options are forwarded to the stream constructor.
Same as the above except objectMode is set to true per default.
MIT