vigzmv / react-promise-suspense

A React hook for resolving promises with Suspense support. <1kb bundle.

Home Page:https://npmjs.com/package/react-promise-suspense

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

usePromise

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.

version minified size minzipped size downloads

Install

  • npm install react-promise-suspense --save

Example

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 <pre>{JSON.stringify(data, null, 2)}</pre>;
};

const App = () => {
  return (
    <Suspense fallback="Loading...">
      <MyFetchingComponent />
    </Suspense>
  );
};

About

A React hook for resolving promises with Suspense support. <1kb bundle.

https://npmjs.com/package/react-promise-suspense

License:MIT License


Languages

Language:TypeScript 57.5%Language:HTML 27.3%Language:CSS 14.7%Language:Standard ML 0.5%