key是為每個vnode指定唯一的id,在同級vnode的Diff過程中,可以根據key快速的進行對比,來判斷是否為相同節點,
利用 key 的唯一性生成 map 對象來獲取對應節點,比遍歷方式更快,指定key后,可以保證渲染的准確性(盡可能的復用 DOM 元素。)
為什么不建議用index作為key?
用index 作為 key,和沒寫基本上沒區別,因為不管你數組的順序怎么顛倒,index 都是 0, 1, 2 這樣排列,導致 Vue 會復用錯誤的舊子節點,做很多額外的工作
一般都用數據中的唯一值,比如ID這種,或者實在不行使用UUID庫。