问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于Vue ,key ,el-table, :row-key遇到的一个坑

发布网友 发布时间:2022-11-16 16:25

我来回答

1个回答

热心网友 时间:2024-03-26 05:03

vue前端开发,经常遇到key为undefine的bug,如图

很多时候 我们把后台返回的Id赋值给key,但是该死的后台返回的Id居然也有重复的时候。
这个时候会出现各种意外情况,入页面卡死,页面空白,下拉列表点不动等等错误。

特别的el-table有写特殊功能需要我们把row-key赋值,如果key重复,渲染就会失败。

为了防止key重复,我们会想当然的认为返回一个随机数字就可以了,所以会这样返回一个随机字符串
Math.random()+'';

但是这其实是有坑的,这只是解决了首次渲染的问题,但是第二次渲染时,有部分元素我们是希望他重复使用的,这样渲染效率性能更好。而且很重要的,有些情况必须这样。例如

这个情况会导致下拉框无法下拉,因为当下拉时页面重新渲染,重新渲染又导致父元素被删除了,所以无法下拉。

key重复 就是 该为不同时却识别为相同了
key一直随机,就是该识别为相同 识别为不同了

下面提供一个生成key的函数 解决Key重复,key随机问题
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
308S标注使用0W-30的机油,如果用5w-40的有影响么 如果飞船在飞行时遇到一粒沙,飞船是否会直接报废?为什么呢?_百度... 火车或地铁行驶中的苍蝇或蚊子这些飞虫是怎么飞的 我一直很疑惑,在地铁公交上的飞虫蚊子之类的,它们不停在杆上,就这么... 固态硬盘的读取是不是都比写入要快啊?才买了个东芝的Q Pro,发现写入496... 我是非护理专业的专科生 但我想考护理资格证 该怎么办呢 我是非护理专业的专科生 但我想考护理资格证 该怎么办? 中专非护理专业单招可以考护理吗 苹果宣布的AppleWatchSeries6和AppleWatchSE有哪些新功能和价格? 描写榕树生命力顽强的诗句 纽芝兰女包是品牌吗 请问股份的特点是什么 在Excel中,若想在单元格中显示-12,正确的输入方法是? Excel输入数字显示问题 牛腿骨如何斩断?家里只有菜刀 10655111联通发来的短信在网上看网址是什么? ...宁波韵升是成长股还是价值股?600366 宁波韵升行情? 黄大妮结局是什么? 我用烘干机烘衣服,怎么烘着所有家电都坏了,烘干机也用不了了 落地电风扇的壳怎么装? 华阳有没有acer电脑的售后 或者成都金沙 华阳镇哪里有专业维修电脑 宏基4741G屏幕坏了,换一个好多钱,在成都哪里修? 论文中带引号的都要加注解吗 我想问一下小天才手表没有网络是怎么回事? 小天才我的形象怎么下载 小天才我的形象怎么玩 您好律师,股东个人投资建房,算公司资产吗? 四川天府健康通风险城市旅居核验电话号码没有取消 西昌疫情防控24小时咨询电话 小米电视 转台时声像不同步不 木兰带兵出征的故事 选购干海带有哪些技巧可循? 新农合缴费怎么交 利这个字怎么读 "利"字新解 淘宝上用信用卡付款退款时退到信用卡吗 苏州哪有卖Fancl? 周公解梦梦见鬼魂 散文诗的三个特点 散文具有哪三个特点 面包厂是如何生产面包的?这是我们的品德课作业!求求了,告诉俺吧!_百 ... 初级会计师报考科目有哪些 如图所示DNA分子结构模式图.(1)图中1、2分别表示___、___,1、2、3... 请问一下七座以上的车要什么驾照? 想问七座以上什么驾照 求一个动漫男孩趴在课桌上玩魔方的图片,真心给跪啦!! 蚀刻的保护膜有哪些类型?区别是什么? 盐水电蚀刻很深时用什么胶? ...下面就是花盆水浇在花盆里,水龙头怎么也关不上,我很着急。是什么意思... 2022年院校专业组志愿如何填报 有哪些技巧