Estoy haciendo una llamada a la API y entiendo que necesito usar funciones asincrónicas para esperar los resultados de la llamada antes de poder trabajar con ellos. Sin embargo, no puedo hacer que la matriz se llene correctamente aunque esté en una función asíncrona. Estoy seguro de que hay algo obvio que me estoy perdiendo, ¿tal vez mi lógica para completar la matriz no está en el lugar correcto?
Aquí está mi código:
var data; const getEvent = async() => { const res = await fetch(apiCall, requestOptions) const res2 = res.json(); return res2 } data = async() => { const temp = await getEvent() for (let i = 0; i < temp._embedded.events.length; i++) { eventlist.push(temp._embedded.events[i]); } } data() console.log(eventlist) console.log(eventlist[1].name)
Obviamente, antes de esto, construyo las variables apiCall y requestOptions para que llamen a la API correctamente.
La consola sale luciendo algo como esto. La matriz está parcialmente llena, pero debe tener 10 elementos de eventos, no solo uno. No puedo acceder a ninguno de los elementos dentro de la matriz.
¡Cualquier ayuda sería muy apreciada!