antDesign获取表单组件的值


子组件中:
 getFormValue是在点击确定按钮获取表单值得事件函数,一旦执行就会执行里边的validate()回调函数
返回的数据中有error和value两种,如果存在error那就是其中某一个表单控件出了问题(比如有一个必须填的项没有填
获取到了value后将之return出去
在从父组件中获取就可以了,在父组件中使用this.form.getFormValue.then(data)来进行获取
 getFormValue = async () => {
    const res = await this.validate();
    if (res.error) {
      return null;
    }
    const obj = res.value;
    return obj;
  };
 
  首先引入form: { validateFieldsAndScroll }这个方法,因为form整体组件肯定是放在一个父组件中的,直接引入即可
然后直接return一个promise结果
  validate = () => {
    const {
      form: { validateFieldsAndScroll },
    } = this.props;
    return new Promise(resolve => {
      validateFieldsAndScroll((error, value) => {
        resolve({ error, value });
      });
    });
  };
 

 父组件中:使用ref来获取子组件中的方法

例如:

 这里的 wrappedComponentRef={i => {

              this.form = i;
            }}
就是获取到了子组件中所有的方法, 但要注意:子组件必须已经挂载才能获取,否则this.form是undefined
然后就是
this.form.getFormValue().then(data => {
   // console.log(data)
  ......
})

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM