v-for中key的使用注意事项
目录:
一、key的特性
二、v-for中key的使用注意事项
一、key的特性
2.2.0+的版本里,当在组件中使用v-for时, key现在是必须的。
1.案例
v-for循环对象数组.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>
<script src="./lib/vue-2.4.0.js"></script></ head>
body>
<div id "app">
//循环遍历对象
v-for="(user,i) in list">Id : { { userzid }} ---字:{{ user.name )}---索引:{{i))</P>
</div>
<script>
//创建vue实例,得到ViewMode1
var vm = new vue ( f
el: '#app' ,
data: {
list: [
{id: 1, name: '李斯' },
{ id: 2, name : '嬴政' },
{ id: 3,name: '赵高'},
{ id: 3,name: '韩非'}
]
2.key的作用
当Vue.js用v-for正在更新已渲染过的元素列表时。它默认用“就地复用” 策略。如果数据项的顺序被改变,Vue将不是移动DOM元素来匹配数据项的顺序。而是简单复用此处每个元素,并且确保它在特定索引下显示已被渲染过的每个元素。.为了给Vue 一个提示,以便它能跟踪每个节点的身份.从而重用和重新排序现有元素,需要为每项提供一个唯一key属性。
key是为了给Vue一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,需要为每项提供一个唯一的key属性。
使用v-for更新已渲染的元素列表时,默认用就地复用策略;列表数据修改的时候,他会根据key值去判断某个值是否修改,如果修改,则重新渲染这一项,否则复用之前的元素;
我们在使用的使用经常会使用index(即数组的下标)来作为key,但其实这是不推荐的一种使用方法。
二、v-for中key的使用注意事项
1. 22.0+ 的版本里,当在组件中使用v-for时, key现在是必须的。
2. v-for 循环的时候, key 属性只能使用number获取string。
3. key 在使用的时候,必须使用v-bind 属性绑定的形式,指定key的值。
4.在组件中,使用v- for循环的时候,或者在一些特殊情况中,如果v-for 有问题,必须在使用v-for的同时,指定唯一的字符串/数字类型:key值。
5. v-for循环普通数组、对象数组、对象、迭代数字、key的使用和注意事项
6. in 后面我们放过 普通数组,对象数组,对象,还可以放数字
7.注意:如果使用 v-for 迭代数字的话,前面的 count 值从 1 开始
8.注意:v-for 循环的时候,key 属性只能使用 number获取string
9.注意:key 在使用的时候,必须使用 v-bind 属性绑定的形式,指定 key 的值
10.在组件中,使用v-for循环的时候,或者在一些特殊情况中,如果 v-for 有问题,必须 在使用v-for 的同时,指定 唯一的 字符串/数字 类型 :key 值