解答
1 key的作用主要是为了高效的更新虚拟DOM
使用 key,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素。
它也可以用于强制替换元素/组件而不是重复使用它
2 当以数组的下标index作为key值时,其中一个元素(如增删改查)发生了变化就有可能导致所有元素的key值发生改变。
diff算法是比较同级之间的不同,以key来进行关联。当对数组进行下标的变换时,比如删除第一条数据,那么以后所有的Index都会发生改变,那么key自然也跟着全部发生改变,所以index作为key值是不稳定的,
这种不稳定性有可能导致性能的浪费 导致diff无法关联起上一次一样的数据。因此 能不用Index作为key就不要用Index。
上次做这道也错了……
key的作用主要是为了高效的更新虚拟DOM
1 key的作用主要是为了高效的更新虚拟DOM
1 key的作用主要是为了高效的更新虚拟DOM
key的作用是为了高效的更新虚拟dom
key的作用的为了高效更新虚拟dom。
若是以index为key,当对数组进行下标的变换时,比如删除第一条数据,那么以后所有的Index都会发生改变,那么key自然也跟着全部发生改变,所以index作为key值是不稳定的
Diff算法是比较同级之间的不同,以key来进行关联
为了高效更新虚拟DOM
删除元素会影响key值的变化
为了高效更新虚拟DOM