API Reference / @gtkx/forms / useForm
Function: useForm()
useForm<
TFieldValues,TContext,TTransformedValues>(props?):UseFormReturn<TFieldValues,TContext,TTransformedValues>
Core hook for managing a form. Returns all methods and state for registration, validation, and submission.
Type Parameters
TFieldValues
TFieldValues extends FieldValues = FieldValues
TContext
TContext = any
TTransformedValues
TTransformedValues = TFieldValues
Parameters
props?
Partial<{ context: TContext; criteriaMode: CriteriaMode; defaultValues: AsyncDefaultValues<TFieldValues> | DefaultValues<TFieldValues>; delayError: number; disabled: boolean; errors: FieldErrors<TFieldValues>; formControl?: Omit<UseFormReturn<TFieldValues, TContext, TTransformedValues>, "formState">; mode: "onBlur" | "onChange" | "onSubmit" | "onTouched" | "all"; progressive: boolean; resetOptions: Partial<{ keepDefaultValues: boolean; keepDirty: boolean; keepDirtyValues: boolean; keepErrors: boolean; keepFieldsRef: boolean; keepIsSubmitSuccessful: boolean; keepIsSubmitted: boolean; keepIsValid: boolean; keepIsValidating: boolean; keepSubmitCount: boolean; keepTouched: boolean; keepValues: boolean; }> | undefined; resolver: Resolver<TFieldValues, TContext, TTransformedValues>; reValidateMode: "onBlur" | "onChange" | "onSubmit"; shouldFocusError: boolean; shouldUnregister: boolean; shouldUseNativeValidation: boolean; validate: ValidateForm<TFieldValues>; values: TFieldValues; }>
Returns
UseFormReturn<TFieldValues, TContext, TTransformedValues>
See
Example
const { register, handleSubmit, formState: { errors } } = useForm<FormValues>();
<form onSubmit={handleSubmit(onSubmit)}>
<input {...register("email", { required: true })} />
</form>