在react或vue中,for循环用Index作为key值是好还是坏呢?

Posted aaron1tall

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在react或vue中,for循环用Index作为key值是好还是坏呢?相关的知识,希望对你有一定的参考价值。

React 与 vue的基本实现原理是通过对比两次虚拟dom的不同 然后直接操作不同的dom  

当以数组的下标index作为key值时  其中一个元素发生了变化 就有可能导致所有元素的key值发生改变  diff算法是比较同级之间的不同  以key来进行关联  当对数组进行下标的变换时,比如删除第一条数据,那么以后所有的Index都会发生改变,那么key自然也跟着全部发生改变, 所以index作为key值是不稳定的,这种不稳定性有可能导致性能的浪费 导致diff无法关联起上一次一样的数据  因此 能不用Index作为key就不要用Index 

以上是关于在react或vue中,for循环用Index作为key值是好还是坏呢?的主要内容,如果未能解决你的问题,请参考以下文章

vue中使用v-for时为啥不能用index作为key?

为啥不总是在 vue.js for 循环中使用索引作为键?

Vue方向:v-for循环中的key属性

taro 编译 建议修改:使用循环的 index 变量作为 key 是一种反优化

React中循环渲染类似Vue中 的v-for

vue v-for 遍历循环时的key值的报错