react-use/docs/useWait.md
2018-11-06 21:49:47 +01:00

752 B

useWait

React waiting management hook.

Usage

import { useWait } from 'react-use'

function UserCreateButton() {
  const { startWaiting, endWaiting, isWaiting, Wait } = useWait();

  return (
    <button
      onClick={() => startWaiting("creating user")}
      disabled={isWaiting("creating user")}
    >
      <Wait message="creating user" waiting={<div>Creating user!</div>}>
        Create User
      </Wait>
    </button>
  );
}

And you should wrap your App with Waiter component. It's actually a Context.Provider that provides a loading context to the component tree.

const rootElement = document.getElementById("root");
ReactDOM.render(
  <useWait.Waiter>
    <App />
  </useWait.Waiter>,
  rootElement
);