ant Form 常用 api

经过 Form.create 包装的组件将会自带 this.props.form 属性,this.props.form 提供的 API 如下:

注意:使用 getFieldsValue getFieldValue setFieldsValue 等时,应确保对应的 field 已经用 getFieldDecorator 注册过了。

方法     说明                                    类型      
getFieldDecorator 用于和表单进行双向绑定,详见下方描述  
getFieldError 获取某个输入控件的 Error Function(name)
getFieldsError 获取一组输入控件的 Error ,如不传入参数,则获取全部组件的 Error Function([names: string[]])
getFieldsValue 获取一组输入控件的值,如不传入参数,则获取全部组件的值 Function([fieldNames: string[]])
getFieldValue 获取一个输入控件的值 Function(fieldName: string)
isFieldsTouched 判断是否任一输入控件经历过 getFieldDecorator 的值收集时机 options.trigger (names?: string[]) => boolean
isFieldTouched 判断一个输入控件是否经历过 getFieldDecorator 的值收集时机 options.trigger (name: string) => boolean
isFieldValidating 判断一个输入控件是否在校验状态 Function(name)
resetFields 重置一组输入控件的值(为 initialValue)与状态,如不传入参数,则重置所有组件 Function([names: string[]])
setFields 设置一组输入控件的值与错误状态:代码 ({
  [fieldName]: {value: any, errors: [Error] }
}) => void
setFieldsValue 设置一组输入控件的值(注意:不要在 componentWillReceiveProps 内使用,否则会导致死循环,原因 ({ [fieldName]: value }) => void
validateFields 校验并获取一组输入域的值与 Error,若 fieldNames 参数为空,则校验全部组件 (
  [fieldNames: string[]],
  [options: object],
  callback(errors, values)
) => void
validateFieldsAndScroll 与 validateFields 相似,但校验完后,如果校验不通过的菜单域不在可见范围内,则自动滚动进可见范围 参考 validateFields

validateFields/validateFieldsAndScroll

const { form: { validateFields } } = this.props;
validateFields((errors, values) => {
  // ...
});
validateFields(['field1', 'field2'], (errors, values) => {
  // ...
});
validateFields(['field1', 'field2'], options, (errors, values) => {
  // ...
});
posted @ 2018-10-01 00:21  每天都要进步一点点  阅读(2204)  评论(0编辑  收藏  举报