vue的就地復用--- v-for與:key


v-for遵循的是vue的就地復用原則。文本與數據是綁定的,所以當文本被重新渲染的時候,列表也會被重新渲染。

就地復用只適用於不依賴子組件狀態或臨時DOM狀態的列表渲染輸出。【比如表單輸入值的列表渲染輸出】。這種就地復用原則在一般的列表展示的場景中不會有問題。但是:如果列表元素存在於用戶交互的場景【比如form表單或者重新排序等】中,就可能會報錯,最好在v-for的同時設置key參數。

因為vue會使用一種最大限度減少動態元素並且盡可能的嘗試修復/再利用相同類型元素的算法。而key指向的是列表中每個元素的唯一值,key 的特殊屬性主要用在 Vue 的虛擬 DOM 算法,在新舊 nodes 對比時辨識 VNodes。使用 :key,vue會基於 key 的變化重新排列元素順序,並且會移除 key 不存在的元素。

 

 <!-- 使用v-for更新已渲染過的元素列表 為防止v-for報錯, 一定要v-bind綁定key key是唯一的,指向列表中每個元素的唯一值 --> 
<div class="info url log" v-for="(item,index) in moreListData" :key="index">

 

對於v-for和:key的使用原理,還是不太理解,如果有大佬路過看到,歡迎賜教,待補充


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM