一維數組轉二維數組


vue項目中經驗:

1.后台發送過來的json文件是一維數組
2.我需要像swiper傳遞過去數據(注: 我的swiper里面放的不是圖片,而是一個個小小的選項)如下圖
一頁存放8個,有2頁,但是傳遞給我的json數據是一個一維數組所以需要改成二維數組
然后再v-for這個二維數組,之后再v-for取出小object的屬性值

處理前:

處理后:

具體代碼:

1.我將axios 獲取到的 一維數組 數據存放到 data中的foods中去
2.然后我在計算屬性computed中進行"改造":
  computed:{
   categoryArr(){
    //獲取到foods
    const {foods} = this
    //准備二維數組
    const arr = [];
    let minArr = [];
    //遍歷foods
    foods.forEach(category => {
      //如果小數組滿了,創建一個新的小數組(所以上班創建minArr不用const而是用let)
      if(minArr.length === 8){
        minArr = [];
      }
      //如果minArr是空的,將小數組保存到大數組中
      if(minArr.length === 0){
        arr.push(minArr)
      }
      //將當前分類數據保存到小數組中
      minArr.push(category)
    });
    return arr;
   }
  }
3.這樣就把一維數組轉變成了二維數組;當然了我們可以自己決定二維數組中每個小數組的長度為多少
4.我直接將categoryArr傳給了子組件,然后v-for套一個v-for就可以了

 


免責聲明!

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



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