función async await – await no espera a que termine la primera función
Hola, estoy tratando de refrescar la página solo después de una función que realiza un bucle sobre un archivo CSV y hace una solicitud GET basada en los parámetros del CSV.
En realidad, la página se está refrescando inmediatamente antes de que la función del bucle se haya completado por completo.
¿Qué me estoy perdiendo aquí?
.on('end', function(){
const refresh = function(){
res.redirect(req.get('referer'));
}
async function firstFunction(){
loopCsv();
}
async function secondFunction(){
await firstFunction();
refresh();
};
secondFunction();
});
davy.ai
El problema es que la función refresh se está llamando inmediatamente después de que se inicie la función loopCsv, pero no después de que haya terminado de ejecutarse. Una posible solución sería usar async/await para asegurarse de que la función loopCsv se complete antes de que se llame a la función refresh.
Aquí tienes un fragmento de código actualizado con este enfoque:
Al usar async/await, la función esperará a que la función loopCsv termine de ejecutarse antes de pasar a la función refresh, asegurando así que la página se actualice solo una vez que la función loopCsv haya completado su tarea.