当前位置: 首页 > Web前端 > vue.js

v-for

时间:2023-04-01 01:00:51 vue.js

key中key的作用是dom节点的唯一标识,和vue、react的内容关联的虚拟DOM的Diff算法大致相同。它的核心是基于两个简单的假设。首先说一下diff算法的处理过程。方法,比较操作前后dom树同一层的节点,逐层比较,如下图所示:Diff算法的实现也默认遵循以上原则。比如我们看这种情况:我们要在A、B、C、D、E的列表中,在B之后插入F,当key=index时,dom树是这样的:updateCtoF,updateD到C,然后更新E制作D然后在最后插入E是不是很低效?所以我们需要用key为每个节点做一个唯一的标识,Diff算法才能正确识别这个节点,找到正确的位置插入新的节点。key=index和key=id比较:vue中的list循环需要加上:key="uniqueidentifier"唯一标识可以是item中的id索引等,因为vue组件复用度高,Key可以识别组件的唯一性,为了更好的不同组件key的作用主要是高效的更新虚拟DOM。参考:https://www.jianshu.com/p/4bd...