目前可以理解为遍历数组或元素中的唯一标识,增加或删减元素时,通过这个唯一标识key判断是否是之前的元素,并且该元素key的值是多少。这个唯一标识是保持不变的。
Vue中为v-for提供了一个属性,key: (推荐学习:phpstorm)
key属性可以用来提升v-for渲染的效率!vue不会去改变原有的元素和数据,而是创建新的元素然后把新的数据渲染进去
在使用v-for的时候,vue里面需要我们给元素添加一个key属性,这个key属性必须是唯一的标识
给key赋值的内容不能是可变的
1. 在写v-for的时候,都需要给元素加上一个key属性
2. key的主要作用就是用来提高渲染性能的!
3.key属性可以避免数据混乱的情况出现 (如果元素中包含了有临时数据的元素,如果不用key就会产生数据混乱)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Document</title> </head> <body> <div id="app"> <ul> <li v-for="item in teachers" :key="item.id">{{ item.name }} <input type="text"></li> </ul> </div> <script src="./node_modules/vue/dist/vue.js"></script> <script> const vm = new Vue({ el: "#app", data: { teachers: [ { id: 1, name: "aaa" }, { id: 2, name: "bbb" }, { id: 3, name: "ccc" }, { id: 4, name: "ddd" } ] } }); </script> </body> </html>