Skip to content

Latest commit

 

History

History
35 lines (27 loc) · 565 Bytes

use-request.md

File metadata and controls

35 lines (27 loc) · 565 Bytes

useRequest

A hook for asynchronous requests.

Usage

import { useRequest } from '@mints/hooks';

const Example = () => {
  const { loading, data } = useRequest(async () => {
    const res = await fetch(url).json();
    return res;
  }, []);

  if (loading || !data) {
    return <div>Loading...</div>;
  }

  return <div>{JSON.stringfiy(data)}</div>;
};

API

useRequest = <T>(
  request: (signal: AbortSignal) => Promise<T>,
  deps: React.DependencyList = [],
): {
  loading: boolean;
  data?: T;
  error?: unknow;
}