@data-client/hooks
TypeScript icon, indicating that this package has built-in type declarations

0.1.9 • Public • Published

Networking Hooks

CircleCI Coverage Status npm downloads bundle size npm version PRs Welcome

Composable hooks for networking data

Aborts inflight request if the parameters change.

const data = useSuspense(useCancelling(MyEndpoint, { filter }), { filter });

Delays updating the parameters by debouncing. Useful to avoid spamming network requests when parameters might change quickly (like a typeahead field).

const debouncedFilter = useDebounce(filter, 200);
const data = useSuspense(SearchList, { filter: debouncedFilter });

Helps track loading state of imperative async functions.

function Button({ onClick, children, ...props }) {
  const [clickHandler, loading, error] = useLoading(onClick);
  return (
    <button onClick={clickHandler} {...props}>
      {loading ? 'Loading...' : children}
    </button>
  );
}

Package Sidebar

Install

npm i @data-client/hooks

Weekly Downloads

1,236

Version

0.1.9

License

Apache-2.0

Unpacked Size

50.5 kB

Total Files

29

Last publish

Collaborators

  • ntucker