¿Cuál es el problema con mi código? Recibo un error al acceder a mydata.dailyconfirmed después de recargar la página.
const[state,setState]=useState({}); async function getApiIndia1(){ const temp=await fetch('https://data.covid19india.org/data.json') const mydata=await temp.json(); setState(mydata) } useEffect(() => { getApiIndia1(); }, [])Actualizar el estado set
setState(mydata.cases_time_series)y cuando desee encontrar la confirmación diaria, recorra su estado, que es básicamente una matriz de objetos.
state.map((dailyconf)=>{ if(dailyconf?.dailyconfirmed) console.log(dailyconf?.dailyconfirmed) })No puede acceder a mydata fuera de getApiIndia1 (que supongo que está tratando de hacer). Solo se define en ese bloque, que es la razón por la que está usando el estado (esencialmente para guardar los datos requeridos globalmente). mydata no se puede encontrar y es por eso que arroja un error. En cambio, lo que debe hacer es acceder al state , que es donde está almacenando esos datos.
Pero eso todavía arrojará un indefinido. Eso se debe al problema que las respuestas anteriores ya han resaltado. Debe acceder a state.cases_time_series.dailyconfirmed . Eso debería darte los datos que deseas.
Siempre es una buena idea verificar cuidadosamente las respuestas de la API. ;)