:key属性
使用key属性绑定元素时,需要保证元素与key属性绑定的元素是一一对应的
这里尤其要注意“元素与属性绑定的一一对应”的含义。例如下面例子中对数组进行增删改等操作时,也需要保证元素与key属性绑定的元素是一一对应
例如:
遍历数组案例中的names为[“mike”, “kobe”, “tom”],若在“tom”(“tom”的index为2)前加入一个新的值—“amy”,则“amy”的index成为2,而“tom”的index会变为3,导致Vue的性能降低
<!--
错误用法
由于增删数组值时,index与item的对应关系会发生变化,导致index和item不是一一对应关系
-->
<li v-for="(item,index) in names" :key="index">{{index+1}} {{item}}</li>
<!--正确用法 但是需要保证item是唯一的-->
<li v-for="(item,index) in names" :key="item">{{index+1}} {{item}}</li>