解决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 相关文章推荐
JSON 和 JavaScript eval使用说明
Jun 13 Javascript
10个基于浏览器的JavaScript调试工具分享
Feb 07 Javascript
jquery插件jTimer(jquery定时器)使用方法
Dec 23 Javascript
DIV始终居中的js代码
Feb 17 Javascript
jquery中$(#form :input)与$(#form input)的区别
Aug 18 Javascript
Javascript中的Callback方法浅析
Mar 15 Javascript
使用Ajax与服务器(JSON)通信实例
Nov 04 Javascript
Angular 4中如何显示内容的CSS样式示例代码
Nov 06 Javascript
基于Vue实现微信小程序的图文编辑器
Jul 25 Javascript
vue模块拖拽实现示例代码
Mar 09 Javascript
解决vue-cli webpack打包开启Gzip 报错问题
Jul 24 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
Aug 20 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
一段php加密解密的代码
2007/07/16 PHP
PHP+memcache实现消息队列案例分享
2014/05/21 PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
2016/10/13 PHP
[原创]php正则删除html代码中class样式属性的方法
2017/05/24 PHP
关于Aptana Studio生成自动备份文件的解决办法
2009/12/23 Javascript
浅谈Jquery核心函数
2015/06/18 Javascript
JS实现可调整倒计时间代码分享
2015/08/18 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
Angular项目如何升级至Angular6步骤全纪录
2018/09/03 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
浅谈一种让小程序支持JSX语法的新思路
2019/06/16 Javascript
js如何获取访问IP、地区、当前操作浏览器
2019/07/23 Javascript
layui点击按钮页面会自动刷新的解决方案
2019/10/25 Javascript
flexible.js实现移动端rem适配方案
2020/04/07 Javascript
js实现删除json中指定的元素
2020/09/22 Javascript
[44:40]2018DOTA2亚洲邀请赛3月30日 小组赛A组Liquid VS OG
2018/03/31 DOTA
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
python实现简单socket通信的方法
2016/04/19 Python
用python做一个搜索引擎(Pylucene)的实例代码
2017/07/05 Python
由Python编写的MySQL管理工具代码实例
2019/04/09 Python
python opencv 批量改变图片的尺寸大小的方法
2019/06/28 Python
在python中将list分段并保存为array类型的方法
2019/07/15 Python
Python列表list常用内建函数实例小结
2019/10/22 Python
布隆过滤器的概述及Python实现方法
2019/12/08 Python
CSS3属性box-sizing使用指南
2014/12/09 HTML / CSS
AmazeUI 按钮交互的实现示例
2020/08/24 HTML / CSS
事业单位绩效考核实施方案
2014/03/27 职场文书
我的梦想演讲稿
2014/04/30 职场文书
环保建议书400字
2014/05/14 职场文书
副总经理任命书
2014/06/05 职场文书
学雷锋标兵事迹材料
2014/08/18 职场文书
优秀共产党员演讲稿
2014/09/04 职场文书
2015年见习期工作总结
2014/12/12 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
Python排序算法之插入排序及其优化方案详解
2021/06/11 Python
python解析json数据
2022/04/29 Python