Effect
useEffect és un hook de React que et permet sincronitzar un component amb un sistema extern, com per exemple una API.
Introducció
useEffect és un hook de React que et permet sincronitzar un component amb un sistema extern.
Obtenir dades
Fetch
A React, per utilitzar la funció fetch per a accedir a una API o un recurs del servidor ho has de fer amb el “hook” useEffect.
En aquest exemple obtenim una llista de posts amb la funció fetch:
data
})
},)
return
<div className="container">
<ul className="list-group mt-5">
</ul>
</div>
)
}Activitat. Afegeix un missatge d’error:
Show solution
if response.status != 200 response.statusText
return
}
data.time
}
},)
return
<div className="container">
<p className="text-center m-5 p-5 fs-3">The current time is .</p>
<p className="text-center text-danger fs-4"></p>
</div>
)
}SWR
SWR és una biblioteca React Hooks per a l’obtenció de dades.
El nom “SWR” deriva de stale-while-revalidate, una estratègia d’invalidació de memòria cau HTTP popularitzada per HTTP RFC 5861 (s’obre en una nova pestanya).
SWR és una estratègia per retornar primer les dades en memòria cau (obsoletes), després enviar la sol·licitud de recuperació (revalidació), i finalment lliurar les dades actualitzades.
Amb SWR el component obtindrà constant i automàticament el darrer flux de dades. I la interfície d’usuari serà sempre ràpida i reactiva.
Instal·la swr:
En aquest exemple, el hook useSWR accepta una key que és una cadena i una funció fetcher. key és un identificador únic de les dades (normalment l’URL de l’API) i passarà al fetcher. El fetcher pot ser qualsevol funció asíncrona que retorni dades, pots utilitzar el fetch natiu o eines com Axios.
El hook retorna 2 valors: data i error, basats en l’estat de la sol·licitud.
return Countries /
}
// created function to handle API request
;
} = 'https://restcountries.com/v2/all', fetcher
// Handles error and loading state
if error
return p className="m-5 text-center fs-3"Failed to load</p>
if isValidating
return p className="m-5 text-center fs-3"Loading...</p>
return
div
<img key= src= width= />
))}
</div>
)
}You're reading a preview.
Sign in with Google to read the full page. A Google account includes 5 free pages in total; students and teachers read their course pages without limit.
Sign in