Defined in: packages/form-core/src/FieldApi.ts:832
A class representing the API for managing a form field.
Normally, you will not need to create a new FieldApi instance directly. Instead, you will use a framework hook/function like useField or createField to create a new instance for you that uses your framework's reactivity model. However, if you need to create a new instance manually, you can do so by calling the new FieldApi constructor.
• TParentData
• TName extends DeepKeys<TParentData>
• TData extends DeepValue<TParentData, TName>
• TOnMount extends undefined | FieldValidateOrFn<TParentData, TName, TData>
• TOnChange extends undefined | FieldValidateOrFn<TParentData, TName, TData>
• TOnChangeAsync extends undefined | FieldAsyncValidateOrFn<TParentData, TName, TData>
• TOnBlur extends undefined | FieldValidateOrFn<TParentData, TName, TData>
• TOnBlurAsync extends undefined | FieldAsyncValidateOrFn<TParentData, TName, TData>
• TOnSubmit extends undefined | FieldValidateOrFn<TParentData, TName, TData>
• TOnSubmitAsync extends undefined | FieldAsyncValidateOrFn<TParentData, TName, TData>
• TFormOnMount extends undefined | FormValidateOrFn<TParentData>
• TFormOnChange extends undefined | FormValidateOrFn<TParentData>
• TFormOnChangeAsync extends undefined | FormAsyncValidateOrFn<TParentData>
• TFormOnBlur extends undefined | FormValidateOrFn<TParentData>
• TFormOnBlurAsync extends undefined | FormAsyncValidateOrFn<TParentData>
• TFormOnSubmit extends undefined | FormValidateOrFn<TParentData>
• TFormOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TParentData>
• TFormOnServer extends undefined | FormAsyncValidateOrFn<TParentData>
new FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>(opts): FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>
new FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>(opts): FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>
Defined in: packages/form-core/src/FieldApi.ts:943
Initializes a new FieldApi instance.
FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>
FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>
form: FormApi<TParentData, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>;
form: FormApi<TParentData, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>;
Defined in: packages/form-core/src/FieldApi.ts:861
A reference to the form API instance.
name: unknown extends TParentData ? string : TParentData extends readonly any[] & IsTuple<TParentData> ? PrefixTupleAccessor<TParentData<TParentData>, AllowedIndexes<TParentData<TParentData>, never>, []> : TParentData extends any[] ? PrefixArrayAccessor<TParentData<TParentData>, [any]> : TParentData extends Date ? never : TParentData extends object ? PrefixObjectAccessor<TParentData<TParentData>, []> : TParentData extends string | number | bigint | boolean ? "" : never;
name: unknown extends TParentData ? string : TParentData extends readonly any[] & IsTuple<TParentData> ? PrefixTupleAccessor<TParentData<TParentData>, AllowedIndexes<TParentData<TParentData>, never>, []> : TParentData extends any[] ? PrefixArrayAccessor<TParentData<TParentData>, [any]> : TParentData extends Date ? never : TParentData extends object ? PrefixObjectAccessor<TParentData<TParentData>, []> : TParentData extends string | number | bigint | boolean ? "" : never;
Defined in: packages/form-core/src/FieldApi.ts:884
The field name.
options: FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>;
options: FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>;
Defined in: packages/form-core/src/FieldApi.ts:888
The field options.
store: Derived<FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>>;
store: Derived<FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>>;
Defined in: packages/form-core/src/FieldApi.ts:911
The field state store.
timeoutIds: Record<ValidationCause, null | Timeout>;
timeoutIds: Record<ValidationCause, null | Timeout>;
Defined in: packages/form-core/src/FieldApi.ts:938
get state(): FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
get state(): FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
Defined in: packages/form-core/src/FieldApi.ts:935
The current field state.
FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
getInfo(): FieldInfo<TParentData>
getInfo(): FieldInfo<TParentData>
Defined in: packages/form-core/src/FieldApi.ts:1189
Gets the field information object.
FieldInfo<TParentData>
getMeta(): FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
getMeta(): FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
Defined in: packages/form-core/src/FieldApi.ts:1157
FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>
getValue(): TData
getValue(): TData
Defined in: packages/form-core/src/FieldApi.ts:1139
Gets the current field value.
TData
Use field.state.value instead.
handleBlur(): void
handleBlur(): void
Defined in: packages/form-core/src/FieldApi.ts:1561
Handles the blur event.
void
handleChange(updater): void
handleChange(updater): void
Defined in: packages/form-core/src/FieldApi.ts:1554
Handles the change event.
Updater<TData>
void
insertValue(
index,
value,
opts?): Promise<void>
insertValue(
index,
value,
opts?): Promise<void>
Defined in: packages/form-core/src/FieldApi.ts:1202
Inserts a value at the specified index, shifting the subsequent values to the right.
number
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
Promise<void>
mount(): () => void
mount(): () => void
Defined in: packages/form-core/src/FieldApi.ts:1046
Mounts the field instance to the form.
Function
void
moveValue(
aIndex,
bIndex,
opts?): void
moveValue(
aIndex,
bIndex,
opts?): void
Defined in: packages/form-core/src/FieldApi.ts:1232
Moves the value at the first specified index to the second specified index.
number
number
UpdateMetaOptions
void
pushValue(value, opts?): void
pushValue(value, opts?): void
Defined in: packages/form-core/src/FieldApi.ts:1194
Pushes a new value to the field.
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
void
removeValue(index, opts?): Promise<void>
removeValue(index, opts?): Promise<void>
Defined in: packages/form-core/src/FieldApi.ts:1220
Removes a value at the specified index.
number
UpdateMetaOptions
Promise<void>
replaceValue(
index,
value,
opts?): Promise<void>
replaceValue(
index,
value,
opts?): Promise<void>
Defined in: packages/form-core/src/FieldApi.ts:1211
Replaces a value at the specified index.
number
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
Promise<void>
setErrorMap(errorMap): void
setErrorMap(errorMap): void
Defined in: packages/form-core/src/FieldApi.ts:1581
Updates the field's errorMap
ValidationErrorMap
void
setMeta(updater): void
setMeta(updater): void
Defined in: packages/form-core/src/FieldApi.ts:1162
Sets the field metadata.
Updater<FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync>>
void
setValue(updater, options?): void
setValue(updater, options?): void
Defined in: packages/form-core/src/FieldApi.ts:1146
Sets the field value and run the change validator.
Updater<TData>
UpdateMetaOptions
void
swapValues(
aIndex,
bIndex,
opts?): void
swapValues(
aIndex,
bIndex,
opts?): void
Defined in: packages/form-core/src/FieldApi.ts:1226
Swaps the values at the specified indices.
number
number
UpdateMetaOptions
void
update(opts): void
update(opts): void
Defined in: packages/form-core/src/FieldApi.ts:1088
Updates the field instance with new options.
FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnServer>
void
validate(cause, opts?): unknown[] | Promise<unknown[]>
validate(cause, opts?): unknown[] | Promise<unknown[]>
Defined in: packages/form-core/src/FieldApi.ts:1521
Validates the field value.
ValidationCause
boolean
unknown[] | Promise<unknown[]>
Your weekly dose of JavaScript news. Delivered every Monday to over 100,000 devs, for free.