Skip to content

xodder/tasks

Repository files navigation

Usage

[+] useTask [+] usePerformTask [+] useIsTaskRunning [+] useTaskState

users.js ---
...
function useCreateUser(handlers) {
  const { perform, ...others } = useTask({
    id: '/users/create',
    execute: async () => api.post('/users'),
    handlers,
  });

  return { createUser: perform, ...others };
}


sign-up.js ---
...
function SignUpPage() {
  const form = useForm();
  const { createUser, isRunning } = useCreateUser({
    onSuccess: (data) => {
      //
    },
    onError: (error) => {
      //
    }
  });

  function handleSubmit(e) {
    e.preventDefault();

    if (form.isValidated()) {
      createUser(form.values);
    }
  }

  ...

  return (
    <form onsubmit={handleSubmit}>
      ...
    </form>
  )
}

About

Simple and flexible asynchronous task utility for React

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published