FieldApi

Class: FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>

定义于: packages/form-core/src/FieldApi.ts:972

一个用于管理表单字段的 API 类。

通常,您不需要直接创建一个新的 FieldApi 实例。相反,您将使用框架钩子/函数,如 useFieldcreateField 来为您创建一个新的实例,该实例会使用您框架的响应式模型。但是,如果您需要手动创建一个新的实例,可以通过调用 new FieldApi 构造函数来实现。

类型参数

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>

TOnDynamic extends undefined | FieldValidateOrFn<TParentData, TName, TData>

TOnDynamicAsync 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>

TFormOnDynamic extends undefined | FormValidateOrFn<TParentData>

TFormOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TParentData>

TFormOnServer extends undefined | FormAsyncValidateOrFn<TParentData>

TParentSubmitMeta

构造函数

new FieldApi()

ts
new FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>(opts): FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>
new FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>(opts): FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>

定义于: packages/form-core/src/FieldApi.ts:1126

初始化一个新的 FieldApi 实例。

参数

opts

FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>

Returns (返回)

FieldApi<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>

属性

form

ts
form: FormApi<TParentData, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>;
form: FormApi<TParentData, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>;

定义于: packages/form-core/src/FieldApi.ts:1026

对 form API 实例的引用。


name

ts
name: DeepKeys<TParentData>;
name: DeepKeys<TParentData>;

定义于: packages/form-core/src/FieldApi.ts:1054

字段名称。


options

ts
options: FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>;
options: FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>;

定义于: packages/form-core/src/FieldApi.ts:1058

字段选项。


store

ts
store: Derived<FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>>;
store: Derived<FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>>;

定义于: packages/form-core/src/FieldApi.ts:1086

字段状态存储。


timeoutIds

ts
timeoutIds: object;
timeoutIds: object;

定义于: packages/form-core/src/FieldApi.ts:1117

formListeners

ts
formListeners: Record<ListenerCause, null | Timeout>;
formListeners: Record<ListenerCause, null | Timeout>;

listeners

ts
listeners: Record<ListenerCause, null | Timeout>;
listeners: Record<ListenerCause, null | Timeout>;

validations

ts
validations: Record<ValidationCause, null | Timeout>;
validations: Record<ValidationCause, null | Timeout>;

访问器

state

Get Signature

ts
get state(): FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>
get state(): FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>

定义于: packages/form-core/src/FieldApi.ts:1114

当前的字段状态。

Returns (返回)

FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>

方法

clearValues()

ts
clearValues(opts?): void
clearValues(opts?): void

定义于: packages/form-core/src/FieldApi.ts:1466

清除数组中的所有值。

参数

opts?

UpdateMetaOptions

Returns (返回)

void


getInfo()

ts
getInfo(): FieldInfo<TParentData>
getInfo(): FieldInfo<TParentData>

定义于: packages/form-core/src/FieldApi.ts:1396

获取字段信息对象。

Returns (返回)

FieldInfo<TParentData>


getMeta()

ts
getMeta(): FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>
getMeta(): FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>

定义于: packages/form-core/src/FieldApi.ts:1360

Returns (返回)

FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>


getValue()

ts
getValue(): TData
getValue(): TData

定义于: packages/form-core/src/FieldApi.ts:1345

获取当前字段的值。

Returns (返回)

TData

已弃用

请使用 field.state.value 代替。


handleBlur()

ts
handleBlur(): void
handleBlur(): void

定义于: packages/form-core/src/FieldApi.ts:1837

处理失焦事件。

Returns (返回)

void


handleChange()

ts
handleChange(updater): void
handleChange(updater): void

定义于: packages/form-core/src/FieldApi.ts:1830

处理更改事件。

参数

updater

Updater<TData>

Returns (返回)

void


insertValue()

ts
insertValue(
   index, 
   value, 
   opts?): void
insertValue(
   index, 
   value, 
   opts?): void

定义于: packages/form-core/src/FieldApi.ts:1413

在指定索引处插入值,并将后续值向右移动。

参数

index

number

value

TData extends any[] ? TData<TData>[number] : never

opts?

UpdateMetaOptions

Returns (返回)

void


mount()

ts
mount(): () => void
mount(): () => void

定义于: packages/form-core/src/FieldApi.ts:1231

将字段实例挂载到表单。

Returns (返回)

Function

Returns (返回)

void


moveValue()

ts
moveValue(
   aIndex, 
   bIndex, 
   opts?): void
moveValue(
   aIndex, 
   bIndex, 
   opts?): void

定义于: packages/form-core/src/FieldApi.ts:1457

将指定第一个索引处的元素移动到第二个指定索引处。

参数

aIndex

number

bIndex

number

opts?

UpdateMetaOptions

Returns (返回)

void


parseValueWithSchema()

ts
parseValueWithSchema(schema): 
  | undefined
  | StandardSchemaV1Issue[]
parseValueWithSchema(schema): 
  | undefined
  | StandardSchemaV1Issue[]

定义于: packages/form-core/src/FieldApi.ts:1880

使用给定的 schema 解析字段值,并返回 issues(如果有)。此方法不会设置任何内部错误。

参数

schema

StandardSchemaV1<TData, unknown>

用于解析此字段值的标准 schema。

Returns (返回)

| undefined | StandardSchemaV1Issue[]


parseValueWithSchemaAsync()

ts
parseValueWithSchemaAsync(schema): Promise<
  | undefined
| StandardSchemaV1Issue[]>
parseValueWithSchemaAsync(schema): Promise<
  | undefined
| StandardSchemaV1Issue[]>

定义于: packages/form-core/src/FieldApi.ts:1892

使用给定的 schema 解析字段值,并返回 issues(如果有)。此方法不会设置任何内部错误。

参数

schema

StandardSchemaV1<TData, unknown>

用于解析此字段值的标准 schema。

Returns (返回)

Promise< | undefined | StandardSchemaV1Issue[]>


pushValue()

ts
pushValue(value, opts?): void
pushValue(value, opts?): void

定义于: packages/form-core/src/FieldApi.ts:1401

将新值推送到字段。

参数

value

TData extends any[] ? TData<TData>[number] : never

opts?

UpdateMetaOptions

Returns (返回)

void


removeValue()

ts
removeValue(index, opts?): void
removeValue(index, opts?): void

定义于: packages/form-core/src/FieldApi.ts:1439

删除指定索引处的某个值。

参数

index

number

opts?

UpdateMetaOptions

Returns (返回)

void


replaceValue()

ts
replaceValue(
   index, 
   value, 
   opts?): void
replaceValue(
   index, 
   value, 
   opts?): void

定义于: packages/form-core/src/FieldApi.ts:1426

替换指定索引处的某个值。

参数

index

number

value

TData extends any[] ? TData<TData>[number] : never

opts?

UpdateMetaOptions

Returns (返回)

void


setErrorMap()

ts
setErrorMap(errorMap): void
setErrorMap(errorMap): void

定义于: packages/form-core/src/FieldApi.ts:1853

更新字段的 errorMap。

参数

errorMap

ValidationErrorMap<UnwrapFieldValidateOrFn<TName, TOnMount, TFormOnMount>, UnwrapFieldValidateOrFn<TName, TOnChange, TFormOnChange>, UnwrapFieldAsyncValidateOrFn<TName, TOnChangeAsync, TFormOnChangeAsync>, UnwrapFieldValidateOrFn<TName, TOnBlur, TFormOnBlur>, UnwrapFieldAsyncValidateOrFn<TName, TOnBlurAsync, TFormOnBlurAsync>, UnwrapFieldValidateOrFn<TName, TOnSubmit, TFormOnSubmit>, UnwrapFieldAsyncValidateOrFn<TName, TOnSubmitAsync, TFormOnSubmitAsync>, UnwrapFieldValidateOrFn<TName, TOnDynamic, TFormOnDynamic>, UnwrapFieldAsyncValidateOrFn<TName, TOnDynamicAsync, TFormOnDynamicAsync>>

Returns (返回)

void


setMeta()

ts
setMeta(updater): void
setMeta(updater): void

定义于: packages/form-core/src/FieldApi.ts:1365

设置字段元数据。

参数

updater

Updater<FieldMetaBase<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>>

Returns (返回)

void


setValue()

ts
setValue(updater, options?): void
setValue(updater, options?): void

定义于: packages/form-core/src/FieldApi.ts:1352

设置字段值并运行 change 验证器。

参数

updater

Updater<TData>

options?

UpdateMetaOptions

Returns (返回)

void


swapValues()

ts
swapValues(
   aIndex, 
   bIndex, 
   opts?): void
swapValues(
   aIndex, 
   bIndex, 
   opts?): void

定义于: packages/form-core/src/FieldApi.ts:1448

交换指定索引处的两个值。

参数

aIndex

number

bIndex

number

opts?

UpdateMetaOptions

Returns (返回)

void


update()

ts
update(opts): void
update(opts): void

定义于: packages/form-core/src/FieldApi.ts:1284

使用新选项更新字段实例。

参数

opts

FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>

Returns (返回)

void


validate()

ts
validate(cause, opts?): unknown[] | Promise<unknown[]>
validate(cause, opts?): unknown[] | Promise<unknown[]>

定义于: packages/form-core/src/FieldApi.ts:1797

验证字段值。

参数

cause

ValidationCause

opts?
skipFormValidation?

boolean

Returns (返回)

unknown[] | Promise<unknown[]>

我们的合作伙伴
Code Rabbit
订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。

订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。