antd中validateFields失效问题
Posted ding-dong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了antd中validateFields失效问题相关的知识,希望对你有一定的参考价值。
在antd的form表单中通常用this.props.form.validateFields()来获取并提交表单信息,那么问题来了,有时为啥会不走validateFields()方法里的代码呢?
这是因为你的form表单里有自定义校验,而你的自定义校验没有用callback()跳出:
// 校验角色名字唯一 getName = (rule, value, callback) => { const { dispatch } = this.props; const { recodes } = this.state; if (value) { dispatch({ type: ‘roleModel/getName‘, payload: { roleId: recodes ? recodes.roleId : ‘‘, roleName: value } }) .then((xhr)=>{ if(!xhr){ callback(‘该角色名称已存在‘); } }) callback()//在这里加一个callback就好了 }else{ callback() } };
是不是和你踩的坑一样,有没有一种困扰多年的**瞬间通畅的感觉,
欢迎借鉴交流
以上是关于antd中validateFields失效问题的主要内容,如果未能解决你的问题,请参考以下文章
使用react中antd design UI库from中的getFieldsValue,getFieldValue,validateFields,resetFields,getFieldDecorat
antd form表单的getFieldDecorator,validateFields,getFieldValue,setFieldsValue用法
Antd form表单中input失效,无法输入字符串,只能输入单个字符