Так же, как я думал, что понял обещания ... Я прокомментировал мой код ниже, где я борюсь, но по сути, я просто не могу понять, почему, когда код ниже запущен, я получаю следующий результат
console.log("Finished Processing sheets")
console.log("Processing Errors")
console.log("sheet has completed processing")
Когда бы я ожидал
console.log("sheet has completed processing")
console.log("Finished Processing sheets")
console.log("Processing Errors")
Вот код.
module.exports = async function(file) {
var sheets = await readXLSX(file, { getSheets: true })
await Promise.each(Object.values(sheets), (sheet)=>{
readXLSX(file, { sheet }).then((data)=>{
//Process sheet data here
return processSheet(data)
})
})
console.log("Finished Processing sheets")
console.log("Processing Errors")
}
var processSheet = async function(data){
//Do some processing and write excel data to database
await db.table('some_table')
.insert(.....)
return new Promise((resolve, reject)=>{
console.log("sheet has completed processing")
resolve()
})
}