Sé que hay un montón de estas preguntas, pero no he podido encontrar una que se ajuste a mi caso. Estoy haciendo llamadas a la API en un bucle while y simplemente no quiero agotar el tiempo de espera de mis llamadas disparándolas rápidamente. El bucle while no parece estar esperando a que termine la llamada.
while(it < array.length){ await apiFunction(array[it]); console.log(it); it++ }
y la funcion
async apiFunction(array){ try{ (async () => { const result = await api.doStuff(array); console.dir(result); } } catch (e) { stuff; } }
También intenté agregar un retorno (resultado) pero eso no cambió nada
La salida de mi consola es
0 1 result result
¿Cómo puedo hacer que el bucle while espere hasta que finalice la llamada a la API? así se ve mi consola
0 result 1 result
Supongo que tenía demasiadas capas de asincronía. Acabo de eliminar el asíncrono desde dentro de apiFunction
async apiFunction(array){ try{ const result = await api.doStuff(array); console.dir(result); } catch (e) { stuff; } }