解决antd 表单设置默认值initialValue后验证失效的问题


Posted in Javascript onNovember 02, 2020

方法一:

getFieldDecorator没有第三个参数,如果写了3个参数就会出错

错误代码:

<Form.Item>
   {
    getFieldDecorator('userName', { initialValue: 'Tom' },{
    rules: [{
     required: true, message: '请输入用户名',
    }],
    })(
    <Input placeholder='请输入用户名'/>
    )
   }
</Form.Item>

正确代码:

<Form.Item>
 {
 getFieldDecorator('userName',{
  initialValue:'Tom',
  rules:[
   {required: true,message:'请输入用户名'}
    ]
   })(
   <Input placeholder='请输入用户名'/>
   )
}
</Form.Item>

方法二:通过setFieldsValue来设置默认值可以解决

this.props.form.setFieldsValue({
 inputValue1:this.state.inputValue1,
 inputValue2:this.state.inputValue2,
 inputValue3:this.state.inputValue3,
});

如果还不能解决,查看是否在表单提交函数里写了验证代码

handleSubmit = (e) => {
  e.preventDefault();
  this.props.form.validateFields((err) => {
   if (err) {
    console.log('表单验证失败');
   }else{
    this.handleOk();//这里是表单验证成功执行的函数
    
   }
  });
 
 };

补充知识:antd自定义组件初始值没有返回或者设置initialValue,form.validateFields不会执行验证

在自定义组件中加个componentDidMount返回初始值就可以啦

componentDidMount() {
  const { onChange } = this.props;
  onChange({
   ...this.state,
  });
 }

以上这篇解决antd 表单设置默认值initialValue后验证失效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery ui css framework
Jun 28 Javascript
jQuery实现按键盘方向键翻页特效
Mar 18 Javascript
JS实现很实用的对联广告代码(可自适应高度)
Sep 18 Javascript
jquery遍历函数siblings()用法实例
Dec 24 Javascript
AngularJS 中的事件详解
Jul 28 Javascript
微信小程序 Record API详解及实例代码
Sep 30 Javascript
node.js中cluster的使用教程
Jun 09 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
Jun 13 Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
May 08 Javascript
Electron整合React使用搭建开发环境的步骤详解
Jun 07 Javascript
JavaScript中Object、map、weakmap的区别分析
Dec 15 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
Jan 15 Javascript
在antd4.0中Form使用initialValue操作
Nov 02 #Javascript
vue+iview使用树形控件的具体使用
Nov 02 #Javascript
在antd Form表单中select设置初始值操作
Nov 02 #Javascript
react+antd 递归实现树状目录操作
Nov 02 #Javascript
antd form表单数据回显操作
Nov 02 #Javascript
antd Select下拉菜单动态添加option里的内容操作
Nov 02 #Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
Nov 01 #Javascript
You might like
Protoss热键控制
2020/03/14 星际争霸
探讨捕获php错误信息方法的详解
2013/06/09 PHP
PHP swfupload图片上传的实例代码
2013/09/30 PHP
从Ajax到JQuery Ajax学习
2007/02/14 Javascript
javascript 对表格的行和列都能加亮显示
2008/12/26 Javascript
js 获取和设置css3 属性值的实现方法
2013/05/06 Javascript
Js放到HTML文件中的哪个位置有什么区别
2013/08/21 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
jquery live()重复绑定的解决方法介绍
2014/01/03 Javascript
JS实现仿百度输入框自动匹配功能的示例代码
2014/02/19 Javascript
javascript自动切换焦点控制效果完整实例
2016/02/02 Javascript
AngularJS 最常用的功能汇总
2016/02/17 Javascript
Node.js+Express配置入门教程详解
2016/05/19 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
浅谈JavaScript的innerWidth与innerHeight
2017/10/12 Javascript
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
微信小程序实现加入购物车滑动轨迹
2020/11/18 Javascript
Python的randrange()方法使用教程
2015/05/15 Python
python 将md5转为16字节的方法
2018/05/29 Python
使用tensorflow实现线性回归
2018/09/08 Python
python求质数的3种方法
2018/09/28 Python
如何使用python操作vmware
2019/07/27 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
2019/09/17 Python
Python类super()及私有属性原理解析
2020/06/15 Python
详解python tkinter包获取本地绝对路径(以获取图片并展示)
2020/09/04 Python
CSS3 选择器 伪类选择器介绍
2012/01/21 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
Waterford美国官网:爱尔兰水晶制品品牌
2017/04/26 全球购物
JAVA中运算符的分类及举例
2015/09/12 面试题
服务质量承诺书
2014/03/27 职场文书
2014年银行员工年终自我评价
2014/09/19 职场文书
2014年“世界无车日”活动方案
2014/09/21 职场文书
高考诚信考试承诺书
2015/04/29 职场文书
刑事起诉书范文
2015/05/19 职场文书
2016年重阳节慰问信
2015/12/01 职场文书