1. 程式人生 > 其它 >vue遍歷陣列物件中的陣列集合(Demo案例)

vue遍歷陣列物件中的陣列集合(Demo案例)

技術標籤:javavuejavascriptelement經驗分享

【辰兮要努力】:hello你好我是辰兮,很高興你能來閱讀,暱稱是希望自己能不斷精進,向著優秀程式設計師前行!

部落格來源於專案以及程式設計中遇到的問題總結,偶爾會有讀書分享,我會陸續更新Java前端、後臺、資料庫、專案案例等相關知識點總結,感謝你的閱讀和關注,希望我的部落格能幫助到更多的人,分享獲取新知,大家一起進步!

吾等採石之人,應懷大教堂之心,願你們奔赴在各自的熱愛中…

前端經常會遇到遍歷一個list集合後,還要遍歷其中每一個物件的某一個特定的屬性,再迴圈顯示,分享簡單用法給初學者,希望對你有幫助!

在這裡插入圖片描述

業務場景:

1、我查詢到一個人物list集合,每個人物會照片photos屬性中會帶幾張照片,數量不等
2、查詢房間的時候,帶上房間的照片,除了遍歷每個查詢到的房間基礎資訊外還要遍歷出每個房間的照片

items: [
        {
          id: 1,
          name: "辰兮",
          photos: [
            { img: "1.jpg" },
            { img: "2.jpg" },
            { img: "3.jpg" }
, ] }, { id: 2, name: "chenxi", photos: [ { img: "4.jpg" }, { img: "5.jpg" } ] } ] };

原理是一樣的就是先遍歷大的集合,再遍歷每一個物件

    <!-- 注意: v-for 迴圈的時候,key 屬性只能使用 number獲取string --
> <!-- 注意: key 在使用的時候,必須使用 v-bind 屬性繫結的形式,指定 key 的值 --> <!-- 在元件中,使用v-for迴圈的時候,或者在一些特殊情況中, 如果 v-for 有問題,必須 在使用 v-for 的同時,指定 唯一的 字串/數字 型別 :key 值 --> <div v-for="(item, key) in items" :key="key"> <div> <div> <p>{{item.name}}</p> </div> <div v-for="(photo,index) in item.photos" :key="index"> <span>{{photo.img}}</span> </div> </div> </div>

補充:vue遍歷中的key講解

    <!-- 注意: key 在使用的時候,必須使用 v-bind 屬性繫結的形式,指定 key 的值 -->
    <!-- key使用案例如下 -->
<ul>
  <li v-for="item in items" :key="item.id">...</li>
</ul>

key 的特殊屬性主要用在 Vue 的虛擬 DOM 演算法,在新舊 nodes 對比時辨識 VNodes。如果不使用 key,Vue 會使用一種最大限度減少動態元素並且儘可能的嘗試修復/再利用相同型別元素的演算法。使用 key,它會基於 key 的變化重新排列元素順序,並且會移除 key 不存在的元素。

總結:key值的存在保證了唯一性,可以用於dom的重新渲染或是就地複用。


非常感謝你閱讀到這裡,如果這篇文章對你有幫助,希望能留下你的點贊