在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 相关文章推荐
javascript 动态参数判空操作
Dec 22 Javascript
一句话JavaScript表单验证代码
Aug 02 Javascript
JS中使用sort结合localeCompare实现中文排序实例
Jul 23 Javascript
jQuery基础知识点总结(DOM操作)
Jun 01 Javascript
全面介绍javascript实用技巧及单竖杠
Jul 18 Javascript
详解使用vuex进行菜单管理
Dec 21 Javascript
JavaScript如何对图片进行黑白化
Apr 10 Javascript
Vue函数式组件-你值得拥有
May 09 Javascript
vue父子模板传值问题解决方法案例分析
Feb 26 Javascript
详解实现vue的数据响应式原理
Jan 20 Vue.js
原生JS中应该禁止出现的写法
May 05 Javascript
vue实现列表拖拽排序的示例代码
Apr 08 Vue.js
微信小程序淘宝首页双排图片布局排版代码(推荐)
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的输入输出流
2007/02/14 PHP
php 中英文语言转换类代码
2011/08/11 PHP
解密ThinkPHP3.1.2版本之模板继承
2014/06/19 PHP
Smarty模板常见的简单应用分析
2016/11/15 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
使用Apache的rewrite
2021/03/09 Servers
基于jquery的表格排序
2010/09/11 Javascript
JavaScript高级程序设计 阅读笔记(四) ECMAScript中的类型转换
2012/02/27 Javascript
ECMAScript中函数function类型
2015/06/03 Javascript
BootStrap的弹出框(Popover)支持鼠标移到弹出层上弹窗层不隐藏的原因及解决办法
2016/04/03 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
vue实现全选、反选功能
2020/11/17 Javascript
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
30分钟精通React今年最劲爆的新特性——React Hooks
2019/03/11 Javascript
Vue中的循环及修改差值表达式的方法
2019/08/29 Javascript
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
2019/10/11 Javascript
python区块及区块链的开发详解
2019/07/03 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
如何基于python操作excel并获取内容
2019/12/24 Python
Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
2020/03/20 Python
后端开发使用pycharm的技巧(推荐)
2020/03/27 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
html5 button autofocus 属性介绍及应用
2013/01/04 HTML / CSS
一份全面的PHP面试问题考卷
2012/07/15 面试题
WINDOWS域的具体实现方式是什么
2014/02/20 面试题
移动通信专业自荐信范文
2013/11/12 职场文书
某同学的自我鉴定范文
2013/12/26 职场文书
新春文艺演出主持词
2014/03/27 职场文书
青年文明号服务承诺
2014/03/31 职场文书
中秋节国旗下演讲稿
2014/09/13 职场文书
工作散漫检讨书
2014/09/16 职场文书
2014年医院个人工作总结
2014/12/09 职场文书
SpringRetry重试框架的具体使用
2021/07/25 Java/Android
使用opencv-python如何打开USB或者笔记本前置摄像头
2022/06/21 Python