UNPKG

@figliolia/react-hooks

Version:

A small collection of simple React Hooks you're probably rewriting on a regular basis

11 lines (10 loc) 511 B
import { useCallback, useMemo } from "react"; import { useLoadingState } from "./useLoadingState.js"; export const useFormState = (callback) => { const { setState, resetState, ...state } = useLoadingState(); const onSubmit = useCallback((e) => { e.preventDefault(); void callback(new FormData(e.target), setState, resetState); }, [callback, setState, resetState]); return useMemo(() => ({ onSubmit, ...state, setState, resetState }), [onSubmit, state, setState, resetState]); };