2016-05-30 17 views
8

Cóż, problem ten mnie zakłopotany ... Po trochę kłopot zagnieżdżone dla pętli dane, aby pokazać się:zagnieżdżone tablice obiektów i V-for

<div v-if = "private.folders!=null" v-for="folder in private.folders"> 
{{folder.name}} 
    <div v-for="check in folder.checks"> 
     {{check.name}} 
    </div> 
</div> 

A potem te dane, które I” Próbuję użyć wygląda następująco:

folders [Array] 
-object [this is a single 'folder'] 
--name 
--checks [array] [each folder has this array] 
---[object] [the actual 'check' object] 
----[name] 

Zewnętrzna pętla działa dobrze i zwraca dane, których się spodziewam. Jednak check.name niczego nie zwraca i nie ma błędów w konsoli. Czy można tak zagnieżdżać pętle for?

Odpowiedz

16

Przetestowałem twój szablon, to działa.

new Vue({ 
 
    el: '#sample', 
 
    data: { 
 
    private: { 
 
     folders : [{ 
 
      name : 'folder1', 
 
      checks : [ 
 
      { name : 'check1.1' }, 
 
      { name : 'check1.2' } 
 
      ] 
 
     }, 
 
     { 
 
      name : 'folder2', 
 
      checks : [ 
 
      { name : 'check2.1' }, 
 
      { name : 'check2.2' } 
 
      ] 
 
     } 
 
     ] 
 
    } 
 
    } 
 
})
<script src="https://cdn.jsdelivr.net/vue/latest/vue.js"></script> 
 
<div id="sample"> 
 
    <div v-if = "private.folders!=null" v-for="folder in private.folders"> 
 
    {{folder.name}} 
 
     <div v-for="check in folder.checks"> 
 
      {{check.name}} 
 
     </div> 
 
    </div> 
 
</div>

+0

to nie działa dla mnie, chociaż użyłem tabeli i nie dział –

+0

jak indeks zastosowanie (bez resetu) w zagnieżdżonych? –