Vue 列表渲染——v-for循環(huán)渲染細(xì)節(jié)

1、v-for表達(dá)式中推薦使用'item of list'形式
2、每個(gè)item使用:key時(shí),它的值不推薦使用item的索引作為唯一值,而是推薦使用從后臺(tái)返回的唯一值,即id,這樣可以提高性能。
3、vue中,直接改變數(shù)組下標(biāo),數(shù)據(jù)已更新,但是不會(huì)被渲染到頁面上,可以用push、pop/shift、unshift/splice/sort/reverse修改數(shù)組內(nèi)容來實(shí)現(xiàn)頁面的更新,或者修改數(shù)組對象的引用。
4、使用template來包裹多個(gè)列表,該標(biāo)簽不會(huì)被渲染到頁面上。


image.png

image.png

不能通過 arr[index] 修改數(shù)據(jù),進(jìn)行視圖渲染,

有三種方式實(shí)現(xiàn)可以數(shù)據(jù)變化頁面也變化
1、直接改變數(shù)組或?qū)ο蟮囊茫?br> 2、使用數(shù)組的變異方法;(針對數(shù)組)7個(gè)方法(push/shift/pop/unshift/splice/sort/reverse)
3、使用Vue.set()或 vm.$set()方法; Vue.set(obj, key, value)
vue.$set(obj, key, value)
* vue 提供一個(gè) set 方法,向一個(gè)對象中添加數(shù)據(jù),當(dāng)數(shù)據(jù)改變時(shí),頁面也會(huì)隨之變化.*

vue 提供一個(gè) set 方法,向一個(gè)對象中添加數(shù)據(jù),當(dāng)數(shù)據(jù)改變時(shí),頁面也會(huì)隨之變化。

  • 對象:
    全局模式下的使用方式:Vue.set(obj, key, value)
    vue 實(shí)例下實(shí)現(xiàn):vue.$set(obj, key, value)

  • 數(shù)組:
    全局模式下的使用方式:Vue.set(arr, index, value)
    vue 實(shí)例下實(shí)現(xiàn):vue.$set(arr, index, value)

遍歷對象

遍歷對象

循環(huán)嵌套

循環(huán)嵌套

迭代數(shù)字

<div id="app">
    <!-- in 后面我們放過  普通數(shù)組,對象數(shù)組,對象, 還可以放數(shù)字 -->
    <!-- 注意:如果使用 v-for 迭代數(shù)字的話,前面的 count 值從 1 開始 -->
    <p v-for="count in 10">這是第 {{ count }} 次循環(huán)</p>
  </div>

使用:key

為什么使用v-for時(shí)必須添加唯一的key?

1.v-for 循環(huán)的時(shí)候,key 屬性只能使用 number獲取string
2.key 在使用的時(shí)候,必須使用 v-bind 屬性綁定的形式,指定 key 的值
3.在組件中,使用v-for循環(huán)的時(shí)候,或者在一些特殊情況中,如果 v-for 有問題,必須 在使用 v-for 的同時(shí),指定 唯一的 字符串/數(shù)字 類型 :key 值

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容