定义于: packages/form-core/src/FieldApi.ts:972
一个用于管理表单字段的 API 类。
通常,您不需要直接创建一个新的 FieldApi 实例。相反,您将使用框架钩子/函数,如 useField 或 createField 来为您创建一个新的实例,该实例会使用您框架的响应式模型。但是,如果您需要手动创建一个新的实例,可以通过调用 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<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 实例。
FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>
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: 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: DeepKeys<TParentData>;
name: DeepKeys<TParentData>;
定义于: packages/form-core/src/FieldApi.ts:1054
字段名称。
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: 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: object;
timeoutIds: object;
定义于: packages/form-core/src/FieldApi.ts:1117
formListeners: Record<ListenerCause, null | Timeout>;
formListeners: Record<ListenerCause, null | Timeout>;
listeners: Record<ListenerCause, null | Timeout>;
listeners: Record<ListenerCause, null | Timeout>;
validations: Record<ValidationCause, null | Timeout>;
validations: Record<ValidationCause, null | Timeout>;
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
当前的字段状态。
FieldState<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>
clearValues(opts?): void
clearValues(opts?): void
定义于: packages/form-core/src/FieldApi.ts:1466
清除数组中的所有值。
UpdateMetaOptions
void
getInfo(): FieldInfo<TParentData>
getInfo(): FieldInfo<TParentData>
定义于: packages/form-core/src/FieldApi.ts:1396
获取字段信息对象。
FieldInfo<TParentData>
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
FieldMeta<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>
getValue(): TData
getValue(): TData
定义于: packages/form-core/src/FieldApi.ts:1345
获取当前字段的值。
TData
请使用 field.state.value 代替。
handleBlur(): void
handleBlur(): void
定义于: packages/form-core/src/FieldApi.ts:1837
处理失焦事件。
void
handleChange(updater): void
handleChange(updater): void
定义于: packages/form-core/src/FieldApi.ts:1830
处理更改事件。
Updater<TData>
void
insertValue(
index,
value,
opts?): void
insertValue(
index,
value,
opts?): void
定义于: packages/form-core/src/FieldApi.ts:1413
在指定索引处插入值,并将后续值向右移动。
number
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
void
mount(): () => void
mount(): () => void
定义于: packages/form-core/src/FieldApi.ts:1231
将字段实例挂载到表单。
Function
void
moveValue(
aIndex,
bIndex,
opts?): void
moveValue(
aIndex,
bIndex,
opts?): void
定义于: packages/form-core/src/FieldApi.ts:1457
将指定第一个索引处的元素移动到第二个指定索引处。
number
number
UpdateMetaOptions
void
parseValueWithSchema(schema):
| undefined
| StandardSchemaV1Issue[]
parseValueWithSchema(schema):
| undefined
| StandardSchemaV1Issue[]
定义于: packages/form-core/src/FieldApi.ts:1880
使用给定的 schema 解析字段值,并返回 issues(如果有)。此方法不会设置任何内部错误。
StandardSchemaV1<TData, unknown>
用于解析此字段值的标准 schema。
| undefined | StandardSchemaV1Issue[]
parseValueWithSchemaAsync(schema): Promise<
| undefined
| StandardSchemaV1Issue[]>
parseValueWithSchemaAsync(schema): Promise<
| undefined
| StandardSchemaV1Issue[]>
定义于: packages/form-core/src/FieldApi.ts:1892
使用给定的 schema 解析字段值,并返回 issues(如果有)。此方法不会设置任何内部错误。
StandardSchemaV1<TData, unknown>
用于解析此字段值的标准 schema。
Promise< | undefined | StandardSchemaV1Issue[]>
pushValue(value, opts?): void
pushValue(value, opts?): void
定义于: packages/form-core/src/FieldApi.ts:1401
将新值推送到字段。
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
void
removeValue(index, opts?): void
removeValue(index, opts?): void
定义于: packages/form-core/src/FieldApi.ts:1439
删除指定索引处的某个值。
number
UpdateMetaOptions
void
replaceValue(
index,
value,
opts?): void
replaceValue(
index,
value,
opts?): void
定义于: packages/form-core/src/FieldApi.ts:1426
替换指定索引处的某个值。
number
TData extends any[] ? TData<TData>[number] : never
UpdateMetaOptions
void
setErrorMap(errorMap): void
setErrorMap(errorMap): void
定义于: packages/form-core/src/FieldApi.ts:1853
更新字段的 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>>
void
setMeta(updater): void
setMeta(updater): void
定义于: packages/form-core/src/FieldApi.ts:1365
设置字段元数据。
Updater<FieldMetaBase<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync>>
void
setValue(updater, options?): void
setValue(updater, options?): void
定义于: packages/form-core/src/FieldApi.ts:1352
设置字段值并运行 change 验证器。
Updater<TData>
UpdateMetaOptions
void
swapValues(
aIndex,
bIndex,
opts?): void
swapValues(
aIndex,
bIndex,
opts?): void
定义于: packages/form-core/src/FieldApi.ts:1448
交换指定索引处的两个值。
number
number
UpdateMetaOptions
void
update(opts): void
update(opts): void
定义于: packages/form-core/src/FieldApi.ts:1284
使用新选项更新字段实例。
FieldApiOptions<TParentData, TName, TData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TFormOnMount, TFormOnChange, TFormOnChangeAsync, TFormOnBlur, TFormOnBlurAsync, TFormOnSubmit, TFormOnSubmitAsync, TFormOnDynamic, TFormOnDynamicAsync, TFormOnServer, TParentSubmitMeta>
void
validate(cause, opts?): unknown[] | Promise<unknown[]>
validate(cause, opts?): unknown[] | Promise<unknown[]>
定义于: packages/form-core/src/FieldApi.ts:1797
验证字段值。
ValidationCause
boolean
unknown[] | Promise<unknown[]>
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。