在antd4.0中Form使用initialValue操作


Posted in Javascript onNovember 02, 2020

悲伤

一开始一直以为initialValue是个好东西,这样我每次编辑的时候把数据传过来就行,后来发现不得行!给大家看看

在antd4.0中Form使用initialValue操作

就离谱,后面认真看了一下文档才知道这个玩意是默认值,第一次有了之后就一直是这个。

然后我在网上看用resetFields()这个方法,每次提交或者取消之后重置一下数据,然而我试了还是不得行,会变成每次点击显示的是上一次的数据,所以后面还是老老实实看了一下form的其他方法。

贴个图

在antd4.0中Form使用initialValue操作

解决

放弃initialValue

const [form] = useForm()

form.setFielsValue(currentItem)

用form带的设置数据方法。这样能够保证每次都是最新的。

随手一贴

也没啥上下文,就将就着看写法就行!!

const { visible, onEdit, onCancel, type, currentItem, ...modalProps } = props;
 const [form] = useForm()
 useEffect(() => {
 form.setFieldsValue({ ...currentItem });
 }, [visible])

 const onOk = () => {
 form.validateFields().then((values: any) => {
 onEdit(values)
 })
 }

补充知识:antd Form表单initialValue设置无效的问题之一

在表格数据中,编辑数据时用到的表单需要使用initialValue 来设置初始值,

以下写法会导致initialValue设置无效。

当表单组件被<></> ,< div></ div> 等包裹时,initialValue设置无效

// initialValue 设置无效的写法
<Form.Item label="xxx">
 {getFieldDecorator('xxx',{
 initialValue:'default'
})(
 <>
 <Input />
 <span>....</span>
 </>
) 
 }
</Form.Item>

// 正确的写法
<Form.Item label="xxx">
 {getFieldDecorator('xxx',{
 initialValue:'default'
})(
 <Input />
) 
 }
 // <span></span>
</Form.Item>

以上这篇在antd4.0中Form使用initialValue操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript函数、方法、对象代码
Oct 29 Javascript
jQuery 美元符冲突的解决方法
Mar 28 Javascript
Angularjs基础知识及示例汇总
Jan 22 Javascript
jquery动态导航插件dynamicNav用法实例分析
Sep 06 Javascript
拥Bootstrap入怀——导航栏篇
May 30 Javascript
jQuery获取选中单选按钮radio的值
Dec 27 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
Feb 19 Javascript
详解Vue的常用指令v-if, v-for, v-show,v-else, v-bind, v-on
Oct 12 Javascript
详解处理Vue单页面应用SEO的另一种思路
Nov 09 Javascript
js实现二级联动简单实例
Jan 11 Javascript
vue-cli3自动消除console.log()的调试信息方式
Oct 21 Javascript
JavaScript实现随机点名小程序
Oct 29 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
JavaScript实现刮刮乐效果
Nov 01 #Javascript
You might like
十天学会php(3)
2006/10/09 PHP
PHP中实现进程间通讯
2006/10/09 PHP
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
php获取用户IPv4或IPv6地址的代码
2012/11/15 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
php简单实现短网址(短链)还原的方法(测试可用)
2016/05/09 PHP
php分页查询的简单实现代码
2017/03/14 PHP
js比较和逻辑运算符的介绍
2013/03/10 Javascript
JS判断变量是否为空判断是否null
2014/07/25 Javascript
jquery插件jquery.beforeafter.js实现左右拖拽分隔条对比图片的方法
2015/08/07 Javascript
简单谈谈javascript Date类型
2015/09/06 Javascript
Javascript实现Array和String互转换的方法
2015/12/21 Javascript
基于vue实现swipe轮播组件实例代码
2017/05/24 Javascript
vue.js数据绑定操作详解
2018/04/23 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
axios实现简单文件上传功能
2019/09/25 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
浅谈vue-props的default写不写有什么区别
2020/08/09 Javascript
[01:55]《走出家门看比赛》——DOTA2 2015国际邀请赛同城线下观战
2015/07/18 DOTA
深入解析Python中的线程同步方法
2016/06/14 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
Django框架模板的使用方法示例
2019/05/25 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
django中使用POST方法获取POST数据
2019/08/20 Python
python 回溯法模板详解
2020/02/26 Python
利用Python如何实时检测自身内存占用
2020/05/09 Python
GUESS德国官网:美国牛仔服装品牌
2017/02/14 全球购物
个性与发展自我评价
2014/02/11 职场文书
合作意向书模板
2014/03/31 职场文书
学校宣传标语
2014/06/18 职场文书
庆祝国庆节演讲稿2014
2014/09/19 职场文书
英语复习计划
2015/01/19 职场文书
2015年全民创业工作总结
2015/07/23 职场文书
python OpenCV学习笔记
2021/03/31 Python
python自动化之如何利用allure生成测试报告
2021/05/02 Python