UNPKG

@vnmfify/core

Version:

```shell npm i @vnmfify/core -S ```

27 lines (24 loc) 925 B
import { useCallback, useContext, useEffect, useRef } from "react"; import FormContext from "./form.context"; import useForm from "./use-form"; function useFormFieldValueEffect(effect, deps) { var { name: formName } = useContext(FormContext); var form = useForm(formName); var mountedRef = useRef(false); var onReset = useCallback(() => mountedRef.current = false, []); useEffect(() => { form === null || form === void 0 ? void 0 : form.addEventListener("reset", onReset); return () => form === null || form === void 0 ? void 0 : form.removeEventListener("reset", onReset); }, [form, onReset]); useEffect(() => { if (mountedRef.current) { effect === null || effect === void 0 ? void 0 : effect(); } else { mountedRef.current = true; } }, deps); } export default useFormFieldValueEffect; //# sourceMappingURL=use-form-field-value-effect.js.map