TanStack

FormSubmitContext

Interface: FormSubmitContext<TFormData, TSchemaOutputs, TFormErrorTypes>

Defined in: FormApi/FormApi.public.ts:54

Context passed to onSubmit after submission validation succeeds.

Example

ts
{
  // ...
  onSubmit: async ({ value, createValidationError }) => {
    const result = await saveUser(value)

    if (!result.ok) {
      return createValidationError(result.error)
    }
  },
}

Type Parameters

TFormData

TFormData

TSchemaOutputs

TSchemaOutputs

TFormErrorTypes

TFormErrorTypes extends FormErrorTypes

Properties

createValidationError

ts
createValidationError: CreateValidationErrorFn<TFormData>;

Defined in: FormApi/FormApi.public.ts:99

Creates a validation error that can be returned from onSubmit.

Example

ts
{
  // ...
  onSubmit: async ({ value, createValidationError }) => {
    const result = await saveUser(value)

    if (result.status === 409) {
      return createValidationError({
        form: 'A user with this email already exists',
        fields: {},
      })
    }
  },
}

formApi

ts
formApi: FormApi<TFormData, TFormErrorTypes>;

Defined in: FormApi/FormApi.public.ts:62

The form API handling this submission.


parseIssues

ts
parseIssues: ParseSubmitIssuesFn<TFormData>;

Defined in: FormApi/FormApi.public.ts:117

Parses Standard Schema issues into an error returnable from onSubmit.

Example

ts
{
  // ...
  onSubmit: async ({ value, parseIssues }) => {
    const result = await saveUser(value)

    if (!result.ok) {
      return parseIssues(result.issues)
    }
  },
}

schemaOutputs

ts
schemaOutputs: TSchemaOutputs;

Defined in: FormApi/FormApi.public.ts:78

The submit outputs produced by the form's schema validators, ordered by validator index.

Example

ts
{
  // ...
  onSubmit: async ({ schemaOutputs }) => {
    const validatedUser = schemaOutputs[0]
    await saveUser(validatedUser)
  },
}

value

ts
value: TFormData;

Defined in: FormApi/FormApi.public.ts:60

The form values for this submission.