一、以下情况可能导致错误发生

出现这个问题的首要条件是因为Select的mode 设置成multiple or tags

1. Select的defaultValue使用了空字符串

例如:

const emptyValue = ''
const emptyValueArr = ['1', '']
<Select
mode="tags"
defaultValue= emptyValue || emptyValueArr
>
{
[1, 2].map((item, index) => (
<Option key={index} value={item}>{item}</Option>
))
}
</Select>

2. 结合Form的initialValue包含空字符串

<FormItem {...formItemLayout} label="负责人">
{getFieldDecorator('ownersAsList', {
rules: [{
required: true,
message: '负责人不能为空'
}],
initialValue: ownersAsList || ['']
})(
<Select
mode="tags"
>
{
ownersList.map((item, index) => (
<Option key={index} value={item}>{item}</Option>
))
}
</Select>
)}
</FormItem>

二、解决办法

1. 如果你不需要默认值, 直接设置为空数组: defaultValue = []

注意: 空数组 != 含空字符串数组

<Select
mode="tags"
defaultValue = []
>
{
[1, 2].map((item, index) => (
<Option key={index} value={item}>{item}</Option>
))
}
</Select>

2. 如果希望有默认选中值: initialValue: ownersAsList || ['默认值']

<FormItem {...formItemLayout} label="负责人">
{getFieldDecorator('ownersAsList', {
rules: [{
required: true,
message: '负责人不能为空'
}],
initialValue: ownersAsList || ['默认值']
})(
<Select mode="tags" >
{
ownersList.map((item, index) => (
<Option key={index} value={item}>{item}</Option>
))
}
</Select>
)}
</FormItem>

Antd Select组件结合使用出现must set key for <rc-animate> children问题的更多相关文章

  1. antd Select进阶功能 动态更新、函数防抖

    一.动态更新Options Antd Select自带的搜索功能很多时候需要结合后端的接口,输入一个关键字的时候会自动更新选择器的选项. 下面列一些注意点 基础实现 选择器选项必须和每次更新的数据挂钩 ...

  2. 改变select组件的option选中状态的快捷方法

    以前我都是在<option>标签处通过判断value是否与其中一个相同然后输出selected="selected"来处理的,今天发现可以直接能过Js改变<sel ...

  3. select组件2

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. select组件

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  5. 如何实现select组件的选择输入过滤作用

    实现select组件的选择输入过滤作用的js代码如下: /** *其中//******之间的部分显示的是在没有选择输入过滤功能的代码上加入的功能代码 ** / (function ( $ ) { $. ...

  6. freemarker写select组件(一)

    freemarker写select组件 1.宏定义 <#macro select id datas> <select id="${id}" name=" ...

  7. freemarker写select组件报错总结(一)

    1.具体错误如下 六月 25, 2014 11:26:29 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template pr ...

  8. freemarker写select组件(五)

    freemarker写select组件 1.宏定义 <#macro select id datas value="" key="" text=" ...

  9. freemarker写select组件(四)

    freemarker写select组件 1.宏定义 <#macro select id datas value="" key="" text=" ...

随机推荐

  1. 自己写的一些公共js方法

    /* 说明文件:这里用的都是es6的语法 导入导出,拿vue举个栗子,你只需要在用到的地方,按需要导入就行了,然后在mounted中直接可以拿来用 比如下面的手机****方法,在需要用到的地方impo ...

  2. jsp与jsp页面间的值传递与接收

    1.使用<a>标签 传递值 <a href="index.jsp?name=增加数据">增加数据</a> ///////目标页面/////值// ...

  3. 计算机网络网络层的IP地址划分及子码

    现在在网络层,即就是TCP/IP协议里的网际互联层,最流行IP协议的就是IPV4.其中IP地址的格式是由32位二进制数字表示的,通常为了人们阅读习惯,将其转换成点分十进制来表示,如:192.168.1 ...

  4. scanf函数的返回值

    #include <stdio.h> int main() { ]; ]); printf("%d\n", n); ; } 此刻注意scanf函数里面的格式限定,该代码 ...

  5. js选中变色,不选中鼠标放上变色

    <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...

  6. linux下python3(Setup)项目

    新建setup.py文件 写入 from setuptools import setup setup( name='tickets', #定义你项目的名称 py_modules=['tickets', ...

  7. Delphi获取本机所有的IP

    安装Indy uses  IdStackWindows; var Isw:TIdStackWindows; slist:TStringList; begin Isw:=TIdStackWindows. ...

  8. 关于MySQL中的自联结的通俗理解

    关于MySQL中的自联结的通俗理解 前言:最近在通过SQL必知必会这本书学习MySQL的基本使用,在学习中也或多或少遇到了点问题,我也正好分享给大家,我的这篇博客用到的所有表格的代码都是来自SQL必知 ...

  9. mysql 5.7 配置文件说明

    1.配置文件样例 [client] #password= socket=/data/var/mysql/mysql.sock [mysqld_safe] pid-file=/data/var/mysq ...

  10. 什么是DevOps

    历史回顾 为了能够更好的理解什么是DevOps,我们很有必要对当时还只有程序员(此前还没有派生出开发者,前台工程师,后台工程师之类)这个称号存在的历史进行一下回顾. 如编程之道中所言: 老一辈的程序员 ...