vue中key屬性的作用

2021-09-29 05:59:47 字數 486 閱讀 2386

當vue.js用v-for正在更新已渲染過的元素列表時,它預設用「就地復用」策略,如果資料項的順序被改變,vue將不會移動dom元素來匹配資料項的順序,而是簡單復用此處每個元素,並且確保它在特定索引下顯示已被渲染過的每個元素。

}

numbers的值原來是[1,2,3],現在變為[0,1,2,3],在沒有key屬性的情況下,渲染輸出的更新步驟:

原先內容為1的div元素內容變成0,原先內容為2的div元素內容變成2,...,最後新增加乙個div元素。

當使用key屬性後,渲染變為:新增加乙個div,它的內容為0,並將它插入原先內容0的元素之前。

在有了一key屬性之後,vue會記住元素們的順序,並根據這個順序在適當的位置插入/刪除元素來完成更新,這種方法比沒有key屬性的效率高。

key屬性還有另外一種使用方法,即強制替換元素,因為當key改變時,vue認為乙個新的元素產生,從而會新插入乙個元素來替換掉原來的元素。

Vue中key屬性的作用

在列表渲染時使用key屬性 使用key屬性強制替換元素 相信大多數vue開發者接觸到key屬性的時候是使用v for進行列表渲染的時候,如果不使用key屬性,vue會產生警告,那麼在這個時候key屬性的作用是什麼呢?當 vue.js 用v for正在更新已渲染過的元素列表時,它預設用 就地復用 策略...

vue中key的作用

v for中為什麼要加key呢,這裡我給大家舉個栗子 沒有key text v model name add 新增 button div for item,i in list checkbox li ul 建立 vue 例項,得到 viewmodel var vm newvue methods th...

Vue中key的作用

相信大多數vue開發者接觸到key屬性的時候是使用v for進行列表渲染的時候,如果不使用key屬性,vue會產生警告,那麼在這個時候key屬性的作用是什麼呢?官方文件中說 當 vue.js 用v for正在更新已渲染過的元素列表時,它預設用 就地復用 策略。如果資料項的順序被改變,vue 將不會移...