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