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

vue中:key的作用

发布网友 发布时间:2023-03-21 10:48

我来回答

1个回答

热心网友 时间:2023-05-14 14:22

可以唯一的确定一个DOM元素,让diff算法更加高效

上边案例重现的是以下过程

不使用key,则 diff 算法默认是这样的:

即把C更新成F,D更新成C,E更新成D,最后再插入E,是不是很没有效率? 更新了3次,之后做了一次创建插入的操作
所以我们需要使用key来给每个节点做一个唯一标识,Diff算法就可以正确的识别此节点,找到正确的位置区插入新的节点。

只使用了一次创建追加的操作

使用key

结论:

点击第二项的delete,

原因很简单,你认为你删除了2,但Vue会认为你做了两件事:

借用官方文档上的例子:

这里如果text发生改变,整个<span>元素会发生更新,因为当text改变时,这个元素的key属性就发生了改变,在渲染更新时,Vue会认为这里新产生了一个元素,而老的元素由于key不存在了,所以会被删除,从而触发了过渡。

假如没有key属性:

那么当text改变时,Vue会复用元素,只改变<span>元素的内容,而不会有新的元素被添加进来,也不会有旧的元素被删除。

同理,key属性被用在组件上时,当key改变时会引起新组件的创建和原有组件的删除,此时组件的生命周期钩子就会被触发。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
太平盛世专辑曲目 梦见自家灶台缺个角 如何看待宝马3系? - 知乎 为什么缺爱的女人婚姻难幸福快乐 求一些好看的架空言情小说,最好是以第一人称为视角的。小白文请绕。 带双目相机的无人机有哪些 禄莱1982年后 工业3d相机国内有哪些靠谱的厂商,特别是在阳光和弱光环境 海康全新双目单线相机 | 消盲区、抑杂光,引领3D检测新突破 10米范围内实现零盲区大FoV深度测量,奥比中光发布Gemini 2双目... 带有韦字好听的微信昵称 山东英语听力考试报名时间是什么时候? 山东高考口语考试报名时间 1688担保交易和诚e赊选哪个 股市吃饼是什么意思 股市摔碗的意思是什么呢 淘宝上买家那里有v3v2的是怎么回事 哪来的 为什么淘宝0信誉买家会是V3会员?关键是我小店还刚开没信誉的,要是被搞了,不是死的很惨?? 在淘宝购物买家有5个花下面的V3表达是什么意思 Picc导管导丝污染了,消毒后还可以在用吗?急急急 微众银行APP是个怎么样的产品呢? WORD文档中,没有输入页眉的页面不算在总的页次当中,如何设置? 文档共5页,如何让第一页的的页码从2开始(2,3,4,5,6,),而页次从1&#47;5开始(1&#47;5,2&#47;5.3&#47;5,4&#47;5,5&#47;5) QQ空间里好友印象在哪里 苹果电脑怎样可以看到qq空间里面别人对我的印象评论 苹果笔记本安装win7 怎么重装系统 雀巢婴儿奶粉怎么样 雀巢奶粉事件 降息减税土改自贸全来了,信心满满有没有 如何批量注册 react、vue中的key有什么作用?(key的内部原理) vuev-for中:key如何选择 vue中key的原理吗?说说你对它的理解 龙口中通,圆通快递停运了吗 专线网络怎么设置? 阁楼天窗窗帘怎么安装,斜屋顶天窗窗帘怎么安装 中草药名方:拨云退翳丸的功效与作用 早安心语:愿你的生命有够多的云翳,造成一个 北窖劳动局的电话号码是多少?有谁知道,急急… 请问工商银行五一上班时间是什么时候? 手机识别不了密码? 华为手机为什么突然不能识别开机密码了,字体也变了,这是怎么回事? 平安证券条件选股怎么设置 里面没有好友怎么解封 怎么进入手机注册的界面? 孙子爱吃小龙虾爷爷偷100多斤,这位男子的行为违反了哪些法律? 农丰虾王小龙虾养殖有哪些技术可以偷学呢 天猫精灵绿灯亮表示什么 西门冰箱 bcd-260kk28a2620w 怎么除霜 印度签证面签意味着