当前位置: 首页 > news >正文

vue - [Vue warn]: Duplicate keys detected: ‘0‘. This may cause an update error.

问题描述:
vue项目中,对表单数组赋值时,控制台抛出警告:
在这里插入图片描述

问题代码:
在这里插入图片描述
问题分析:
1、Vue 要求每个虚拟 DOM 节点必须有唯一的 key。该警告信息通常出现在使用v-for循环的场景中,多个同级节点使用了相同的key作为唯一标识,导致Vue无法识别。
2、问题代码中,外层表单el-form中,有两个同级的el-row列表,在对el-form进行赋值时,同时会对内层的这两个el-row列表进行赋值;此时这两个列表的元素,都使用了index,也就是列表的索引作为key,就会出现两个列表的第一个元素的key都是0,第二个元素的key又都是1。。。依次类推,不同的元素使用相同的key,就会出现冲突,从而产生了报警。

解决方法:
在使用v-for循环时,使用真正能够唯一标识元素的特征作为key,如下图:
在这里插入图片描述
注意:
这里两个列表分别使用了不相干的两个id字段作为元素的key,通常来说是没有问题的;但是如果有两行数据,一个使用的 payPlanId 是1001,而另一个使用的 relationId 恰好也是1001,此时仍然会触发警告。
所以判断是否重复key,不仅仅是key所使用的字段能够区别开,更重要的所产生的实际值不能重复。 如果遇到上述特殊情况产生了警告,可以手动拼接key使其值唯一,比如最后一个el-row,使用 :key=“prRelation-${item.relationId}”。


http://www.mrgr.cn/news/95958.html

相关文章:

  • 第六篇:Setup:组件渲染前的初始化过程是怎样的?
  • 【Linux】交叉编译2
  • OpenCV图像拼接(5)图像拼接模块的用于创建权重图函数createWeightMap()
  • 嵌入式硬件工程师从小白到入门-PCB绘制(二)
  • 进程通信(进程池的模拟实现) read write函数复习 Linux ─── 第23课
  • 数据结构day04
  • python康复日记-request库的使用,爬虫自动化测试
  • 26考研——图_图的存储(6)
  • 26考研——图(6)
  • 2.基于多线程的TCP服务器实现
  • sql server如何提高索引命中率
  • 亚马逊云科技全面托管DeepSeek-R1模型现已上线
  • 【Spring AI】基于专属知识库的RAG智能问答小程序开发——功能优化:用户鉴权主体功能开发
  • 142. 环形链表 II——考察数学,难!
  • 26考研——图_图的应用(6)
  • Proximal Policy Optimization(PPO)算法
  • Flutter项目之table页面实现
  • 【Python】pillow库学习笔记1-Image类
  • 1.基于TCP的简单套接字服务器实现
  • AI深度思考系列——大模型被当成了某度