Skip to content

@sqlrooms/ui / Form

Function: Form()

Form<TFieldValues, TContext, TTransformedValues>(props): Element

A provider component that propagates the useForm methods to all children components via React Context API. To be used with useFormContext.

Type Parameters

Type ParameterDefault type
TFieldValues extends FieldValues-
TContextany
TTransformedValues extends undefined | FieldValuesundefined

Parameters

ParameterTypeDescription
propsFormProviderProps<TFieldValues, TContext, TTransformedValues>all useForm methods

Returns

Element

Remarks

APIDemo

Example

tsx
function App() {
  const methods = useForm();
  const onSubmit = data => console.log(data);

  return (
    <FormProvider {...methods} >
      <form onSubmit={methods.handleSubmit(onSubmit)}>
        <NestedInput />
        <input type="submit" />
      </form>
    </FormProvider>
  );
}

 function NestedInput() {
  const { register } = useFormContext(); // retrieve all hook methods
  return <input {...register("test")} />;
}