key在React中的作用是唯一标识列表中的每个元素,当列表发生变化的时候,会用key来识别哪些元素更新、删除等等
- 性能原因:索引作为key的时候,当列表顺序发生变化,索引会改变,key也会改变,React就会错误的认为元素发生了变化,会进行不必要的重复渲染,影响性能
- 组件状态问题:如果列表项包含状态或用户输入,使用索引作为 key 可能会导致状态出现错误。因为 React 使用 key 来追踪组件身份,错误的 key 会导致状态与错误的组件关联。
key在React中的作用是唯一标识列表中的每个元素,当列表发生变化的时候,会用key来识别哪些元素更新、删除等等