Vue 中不要用 index 作为 key

简要回答

  1. key是给每一个vnode的唯一id,可以依靠key,更准确, 更的拿到oldVnode中对应的vnode节点。

  2. 用组件唯一的 id(一般由后端返回)作为它的 key,实在没有的情况下,可以在获取到列表的时候通过某种规则为它们创建一个 key,并保证这个 key 在组件整个生命周期中都保持稳定。

  3. index 作为 key,不管你数组的顺序怎么颠倒,index 都是 0, 1, 2 这样排列,导致 Vue 会复用错误的旧子节点,做很多额外的工作

  4. 千万别用随机数作为 key,不然旧节点会被全部删掉,新节点重新创建

文章参考:juejin.cn/post/684490…

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享