v-for
key
key是给Vue内部使用的,是一个用于判断节点需不需要进行更新的标识,若key的值没改变则不需要更新节点,反之。
:key
给列表项添加的唯一标识,便于Vue进行列表项的正确排序复用。
作用:
- 减少不必要的节点更新,提高更新效率(高效更新虚拟DOM)。
- 若组件需要重新加载,可以改变key的值。
key值的选择:
- key的值只能是字符串或数字类型
- key的值必须具有唯一性
- 推荐使用 id 作为 key(唯一),不推荐使用index作为key(会变化,不对应)
不写key属性的隐患:
v-for的默认行为会尝试原地修改元素(就地复用)
1<div v-for="item,index in arr" :key="arr.id">
2 {{ arr.name }}
3</div>