my-swiss-knife: - v1.9.9
    Preparing search index...

    Function useSubmit

    • useSubmit

      A React hook that provides an imperatively controlled hidden submit button for a given form. Useful when you need to programmatically submit a form from outside the form context (e.g. from a toolbar or a modal).

      Parameters

      • formId: string

        The id of the form element to be submitted.

      Returns {
          formId: string;
          submit: () => void;
          SubmitBtn: FC;
          submitRef: RefObject<HTMLButtonElement | null>;
      }

      An object with:

      • SubmitBtn: A hidden submit button component to be rendered inside the component tree.
      • submitRef: A ref to the internal button element.
      • submit: A function that programmatically triggers the form submission.
      • formId: The id of the form element to be submitted.
      const { SubmitBtn, submit } = useSubmit('my-form-id');

      return (
      <>
      <form id="my-form-id">...</form>
      <SubmitBtn />
      <button onClick={submit}>Submit Form</button>
      </>
      );
      export const useSubmit = (formId: string) => {
      const submitRef = useRef<HTMLButtonElement | null>(null);

      const SubmitBtn: FC = useCallback(() => (
      <button
      type="submit"
      form={formId}
      ref={submitRef}
      hidden
      />
      ), [formId]);

      const submit = () => {
      submitRef.current?.click();
      };

      return {
      SubmitBtn,
      submitRef,
      submit,
      formId
      };
      };