React hook for resolving promises with Suspense support.
Inspired by fetch-suspense, but this one is not limited to fetch, usePromise
works with any Promise.
npm install react-promise-suspense --save
Here's an Codesandbox example of a setTimeout delayed component.
Awaiting a fetch promise:
import usePromise from 'react-promise-suspense';
const fetchJson = input => fetch(input).then(res => res.json());
const MyFetchingComponent = () => { // usePromise(Promise, [inputs,],) const data = usePromise(fetchJson, [ 'https://pokeapi.co/api/v2/pokemon/ditto/', { method: 'GET' }, ]);
return
{JSON.stringify(data, null, 2)}; };
const App = () => { return (
); };