我正在尝试执行以下操作:
问题是.on("end")
在.on("data")
完成处理每一行之前触发。 .on("end")
处理完所有行后如何才能触发.on("data")
?
以下是我所说的一个简单示例:
import parse from 'csv-parse';
var parser = parse({});
fs.createReadStream(this.upload.location)
.pipe(parser)
.on("data", line => {
var num = Math.floor((Math.random() * 100) + 1);
num = num % 3;
num = num * 1000;
setTimeout( () => {
console.log('data process complete');
}, num);
})
.on("end", () => {
console.log('Done: parseFile');
next(null);
});
提前致谢。