antd Form组件使用getFieldsValue方法获取自定义组件的值?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
自定义组件
1、自定义组件被getFieldsValue包裹,会获得以下属性
onChange方法, 子组件调用此方法,可将值传给父组件,从而Form可拿到自定义组件的值
value属性,获得初始值
2、组件调用
像Form表单内的组件一样调用,就可以了
补充知识:Ant Design Pro,用setFieldsValue方法,给嵌套到Form表单中的DatePicker或RangePicker组件设置默认值
其实用setFieldsValue或者获取setState方法都可以设置DatePicker的默认值。
但是关键点在于,引用moment方法转换日期格式
1、setState方法,利用FormItem组件的initialValue属性设置默认值:
import moment from 'moment'; this.setState({defaultDate}) // 自定义默认日期 <FormItem label="日期选择框"> {getFieldDecorator('date', { initialValue: moment(this.state.defaultDate, 'YYYY-MM-DD'), })( <DatePicker format={'YYYY-MM-DD'} /> )} </FormItem>
2、setFieldsValue方法,利用form的setFieldsValue属性赋值:
import moment from 'moment'; this.props.form.setFieldsValue({ "date": moment("自定义默认日期", 'YYYY-MM-DD') }) <FormItem label="日期选择框"> {getFieldDecorator('date', { rules: [{ required: true }], })( <DatePicker format={'YYYY-MM-DD'} /> )} </FormItem>
RangePicker同理,只是 initialValue 变成了数组 [ moment( startDate ) , moment( endDate )]
关于antd Form组件使用getFieldsValue方法获取自定义组件的值问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。