为了账号安全,请及时绑定邮箱和手机立即绑定

ant design同一个页面上弹出的多个modal上的表单,如何实现分别自校验

ant design同一个页面上弹出的多个modal上的表单,如何实现分别自校验

正在学习使用antdesign的modal和表单,碰到一个问题。想要达到的效果是父页面上有多个按钮都需要弹出各自的Modal,每个Modal上有Form,有各自的验证内容。参考了官方例子写了类似下面的代码父页面中添加NewOneA和NewOneB两个类:saveAFormRef=(formRef)=>{this.formRef=formRef;}saveBFormRef=(formRef)=>{this.formRef=formRef;}render(){return()}其中NewOneA和NewOneB都是在Modal中的表单伪代码:{getFieldDecorator('author',{rules:[{...}],})()}因为在父页面中,把NewOneA和NewOneB的formRef存到同一个this.formRef里了,所以无法正确使用validateFields方法进行校验。试了一下想把formRef存到两个state里,比如:this.setState({AformRef:formRef});可是在其他方法里从this.state.AformRef中取不到值,看来不可行。请问大家有什么思路可以解决这个问题么?
查看完整描述

2 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

我们公司写法都是每个Modal一个组件,验证在各自的组件里边做。
handleSubmit=()=>{
letadopt=false;
this.props.form.validateFields(
(err)=>{
adopt=!err;
},
);
if(adopt){...}
};
                            
查看完整回答
反对 回复 2019-05-21
  • 2 回答
  • 0 关注
  • 2449 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信