我正在尝试从 csv 读取数据,并且我正在暂停流,因为我需要使用 await 执行一些异步任务。但是,在处理完所有行之前调用 done 事件。据我了解,即使暂停也不会停止完成甚至被调用。有什么解决方法吗?
let res = csv({
delimiter: '|',
// noheader: true,
output: "csv",
nullObject: true
})
.fromStream(fs.createReadStream(`./dbscvs/new_${table.name}.csv`))
.on('data', async (data) => {
res.pause()
await new Promise(resolve=>{
setTimeout(resolve,5000)
})
res.resume()
})
.on('done', async e => {
console.log('done')
})
.on('error', (err) => {
console.log(err)
})