Skip to content

Instantly share code, notes, and snippets.

@ernestlv
Created June 14, 2023 02:37
Show Gist options
  • Save ernestlv/a09ae09526c109dfa749de9a1bebc90c to your computer and use it in GitHub Desktop.
Save ernestlv/a09ae09526c109dfa749de9a1bebc90c to your computer and use it in GitHub Desktop.
Async call in React Hooks
const Main = () => {
useEffect(() => { // runs after Main component is rendered
async function init() {
console.log('fetching suggestions ...');
let response;
try {
response = await fetch('https://pokeapi.co/api/v2/pokemon/');
response = await response.json();
} catch( e ) {
response = Promise.resolve({ results:[] });
} finally {
console.log('fetched response', response);
}
console.log('fetching suggestions done.');
};
init();
}, []); // empty array make sure it only runs once
console.log("render Main...");
return (
<h1>Hello World!!!</h1>
);
}