我有一個代碼,它逐行讀取 .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 決議器異步操作- 似乎我們不能await在.on('data', ...回呼中使用。
執行此類操作的正確方法是什么 - 如果我想逐行讀取 .csv (檔案可能非常大 - 因此必須以流式方式執行)并在保存到資料庫時收集一些錯誤?(這些錯誤會顯示在前端)
uj5u.com熱心網友回復:
https://csv.js.org/parse/api/async_iterator/ 此解決方案逐行讀取 .csv
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/492557.html
標籤:javascript 节点.js 打字稿 CSV csv解析
下一篇:計算字串中特定單詞的出現次數
