[英]NodeJs csv-parse await inside on('data')
我有一個代碼,它逐行讀取 .csv 並將每個解析的行保存到數據庫中
const csv = require('csv-parse')
const errors = []
csv.parse(content, {})
.on('data', async function (row: any) {
const error = await tryToSaveToDatabase(row);
if (error) {
errors.push(error)
}
})
.on('end', function () {
// somehow process all errors
})
但是,不幸的是, .on('end', ...
塊被調用得更早,然后所有await
塊都成功了。
我已經閱讀了 NodeJs Csv 解析器異步操作- 似乎我們不能在.on('data', ...
回調中使用await
。
執行此類操作的正確方法是什么 - 如果我想逐行讀取 .csv (文件可能非常大 - 因此必須以流式方式執行)並在保存到數據庫時收集一些錯誤? (這些錯誤會顯示在前端)
https://csv.js.org/parse/api/async_iterator/此解決方案逐行讀取 .csv
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.