素材巴巴 > 程序开发 >

关于antd的form表单组件的一个天坑。。。

程序开发 2023-09-11 18:33:28

事情是这样的,项目中遇到了一个问题,用表单包裹着着一个Switch组件,提交表单的时候可以将Switch的值一起提交。
在这里插入图片描述

form.setFieldsValue({power:0})
 

这个开关其实是根据checked 属性来表示开或者关的。当时想要的效果是开着的,但是效果出来都是关着的,我本来以为flag取值有问题,于是把checked 属性直接复制为true,但是依然没有生效。。。

google了很久为什么Switch组件的checked 属性不生效,结果都没有找到答案。。

真凶其实是formItemname属性。。Form.Item 设置 name 后,组件受 Form 管理值。而在代码前文有一个将form中的power这个Item设置为0 的操作,因此FormItem里的Switch 就不会生效了。。

相同的,如果formItem设置了name属性里放了Inputinput里的数据也会被formItem 给覆盖掉。
具体可以看官网案例


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。