中等Vue
0 1

在Vue渲染列表时,为什么不建议使用数组的下标作为列表的key值?

【概念释义】

key 供 diff 算法识别节点身份。用数组下标作 key插入、删除、重排时会导致 DOM 复用错乱:输入框焦点/内部状态跑到错误行,且移动节点时产生多余 patch。应使用稳定业务 id

【基础使用】

vue
<!-- 不推荐 -->
<li v-for="(item, index) in list" :key="index">{{ item.name }}</li>

<!-- 推荐 -->
<li v-for="item in list" :key="item.id">{{ item.name }}</li>

【版本差异】

登录查看完整 678

回答讨论

暂无讨论,登录后可抢先发言

本题库更多题目(50)