React 中的key是什么?
key是 React 用于追踪更新时,哪些列表中元素被修改、被添加或者被移除的辅助标识。
为什么它很重要?
如果没有key,React就不知道列表中虚拟DOM元素与页面中的哪个元素相对应。所以在创建列表的时候,不要忽略key。
当状态中的数据发生变化时,react会根据新数据产生新的虚拟DOM,然后新的虚拟DOM跟旧的虚拟DOM进行diff比较,若虚拟DOM内容变了,则生成新的真实DOM,替换页面中之前的真实DOM,若没变则直接使用之前的真实DOM。
render () {
return (
<ul>
{
this.state.todoItems.map(({item, index}) => {
return <li key={index}>{item}</li>
})
}
</ul>
)
}