在antd中setFieldsValue和defaultVal的用法


Posted in Javascript onOctober 29, 2020

代码如下:

componentWillMount() {
  this.props.form.setFieldsValue({
phone: this.props.maintain.account.phone,
    email: this.props.maintain.account.email
  });
  console.log(this.props.form.setFieldsValue);
}

打印出来

function setFieldsValue(fieldsValue) {
      var newFields = {};
      var fieldsMeta = this.fieldsMeta,
        fields = this.fields;  
      var virtualPaths = (0, _utils.getVirtualPat…      
undefined

更神奇的是这段代码本来运行的好好的一点问题都没有,在同事的电脑上却会出现如上问题,我的电脑也出现了这个问题但是代码没改过

后来就这样设置代码的默认值,就显示出来了

一定要加一个<div></div>

<FormItem
{...formItemLayout}
label="手机号"
>
{getFieldDecorator('phone', {
rules: [{
required: false, message: '请输入您的手机号!'
}]
})(
<div>
<Input className="content_style" addonBefore={<Icon type="mobile" />} defaultValue={maintain.account.phone} />
</div>
)}
</FormItem>

补充知识:antd4中Form组件initialValues设置初始值无效,使用setFieldsValue动态赋值,getFieldsValus动态获取值

首先说明initialValues这个属性,这个属性antd官方给的是设置Form组件初始值,但是有个问题如果值从后端请求那么initialValues可能会设置不上,如果说用匿名组件的话,修改From组件会导致一系列问题,

接下来就是用到了setFieldsValue和getFieldsValus属性

在antd官网中说明form组件不能使用this.setState修改值,

只能通过setFieldsValue来设置,

通过getFieldsValus来获取

首先通过getFieldsValus来动态获取值

export default class List extends Component {
  //第一步
  formRef = React.createRef();
 }

第二步

使用ref

<Form
   {...layout}
   name="basic"
   //这里  formRef在第一步中可以看到
   ref={this.formRef}
   
   //initialValues 设置初始值
   initialValues={this.state.formInitValues}
   //validateMessages 统一处理错误信息
   validateMessages={this.validateMessages}
   //form submit点击之后成功回调
   onFinish={onFinish}
   //form submit点击之后失败回调
   onFinishFailed={onFinishFailed}
 >
</Form>

使用setFieldsValue

注意:sell_linkman是Form中item的字段名,需要给那个字段赋值用这个就ok,可以写在你事件中

this.formRef.current.setFieldsValue({
   sell_linkman: value,
 })

使用getFieldsValue

‘sell_linkman'是form中item字段名

this.formRef.current.getFieldsValue('sell_linkman')

以上这篇在antd中setFieldsValue和defaultVal的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 定时局部刷新(setInterval)
Nov 19 Javascript
ajax异步刷新实现更新数据库
Dec 03 Javascript
js动态往表格的td中添加图片并注册事件
Jun 12 Javascript
jquery合并表格中相同文本的相邻单元格
Jul 17 Javascript
jQuery手机拨号界面特效代码分享
Aug 27 Javascript
js实现TAB切换对应不同颜色的代码
Aug 31 Javascript
javascript实现的上下无缝滚动效果
Sep 19 Javascript
AngularJS表单和输入验证实例
Nov 02 Javascript
BootStrap中
Dec 10 Javascript
AngularJS实现页面定时刷新
Mar 14 Javascript
Django使用多数据库的方法
Sep 06 Javascript
element-ui 中的table的列隐藏问题解决
Aug 24 Javascript
微信小程序淘宝首页双排图片布局排版代码(推荐)
Oct 29 #Javascript
解决antd datepicker 获取时间默认少8个小时的问题
Oct 29 #Javascript
Antd中单个DatePicker限定时间输入范围操作
Oct 29 #Javascript
微信小程序实现可长按移动控件
Nov 01 #Javascript
Vue时间轴 vue-light-timeline的用法说明
Oct 29 #Javascript
antd日期选择器禁止选择当天之前的时间操作
Oct 29 #Javascript
vue制作toast组件npm包示例代码
Oct 29 #Javascript
You might like
如何对PHP程序中的常见漏洞进行攻击(上)
2006/10/09 PHP
PHP个人网站架设连环讲(三)
2006/10/09 PHP
简单实用的.net DataTable导出Execl
2013/10/28 PHP
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
递归实现php数组转xml的代码分享
2015/05/14 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
PHP实现登陆表单提交CSRF及验证码
2017/01/24 PHP
摘自百度的图片轮换效果代码
2007/11/19 Javascript
Javascript常用运算符(Operators)-javascript基础教程
2007/12/14 Javascript
JS实现仿google、百度搜索框输入信息智能提示的实现方法
2015/04/20 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
关于Ajax的原理以及代码封装详解
2017/09/08 Javascript
微信小程序之裁剪图片成圆形的实现代码
2018/10/11 Javascript
运用js实现图层拖拽的功能
2019/05/24 Javascript
详细分析vue响应式原理
2020/06/22 Javascript
js canvas实现五子棋小游戏
2021/01/22 Javascript
[01:45]IMBATV TI4前线报道-选手到达
2014/07/07 DOTA
[01:12]快闪回顾DOTA2亚洲邀请赛(DAC) 静候2018新征程开启
2018/03/11 DOTA
[20:39]DOTA2-DPC中国联赛 正赛开幕式 1月18日
2021/03/11 DOTA
Python计算三角函数之asin()方法的使用
2015/05/15 Python
python 捕获 shell/bash 脚本的输出结果实例
2017/01/04 Python
python多进程使用及线程池的使用方法代码详解
2018/10/24 Python
Python使用uuid库生成唯一标识ID
2020/02/12 Python
新加坡领先的时尚生活方式零售品牌:CHARLES & KEITH
2018/01/16 全球购物
Beach Bunny Swimwear官网:设计师泳装和性感比基尼
2019/03/13 全球购物
大学毕业生工作的自我评价
2013/10/01 职场文书
高中地理教学反思
2014/01/29 职场文书
打架检讨书300字
2014/02/02 职场文书
餐厅经理岗位职责范本
2014/02/17 职场文书
我的大学生活演讲稿
2014/04/25 职场文书
安全月活动总结
2014/05/05 职场文书
学雷锋活动总结报告
2014/06/26 职场文书
学生实习证明模板汇总
2014/09/25 职场文书
2014年党员发展工作总结
2014/12/02 职场文书
金榜题名主持词
2015/07/02 职场文书
浅谈怎么给Python添加类型标注
2021/06/08 Python