2016-02-13 119 views
0

循環如何訪問帶把手的嵌套數組的結果?從JSON訪問具有把手的嵌套數組並通過

我有這樣的僞數據:

var data = [{ 
    articles : [{ 
     id : '0', 
     url : 'foo', 
     title : 'Foo', 
     body : 'some foo bar', 
     category : 'foo', 
     tags : [ 
      'foo' 
     ] 
    }, { 
     id : '1', 
     url : 'foo-bar', 
     title : 'Foo bar', 
     body : 'more foo bar', 
     category : 'foo', 
     tags : [ 
      'foo', 'bar' 
     ] 
    }, { 
     id : '2', 
     url : 'foo-bar-baz', 
     title : 'Foo bar baz', 
     body : 'more foo bar baz', 
     category : 'foo', 
     tags : [ 
      'foo', 
      'bar', 
      'baz' 
     ] 
    }] 
}, { 
    users : [{ 
     name: 'Admin' 
    }, { 
     name: 'User' 
    }] 
}]; 

這是我的模板文件:

{{#each data.[0].articles}} 
<article class="id-{{this.id}}"> 
    <h1><a href="/journal/{{this.url}}">{{this.title}}</a></h1> 
    <div class="category"><a href="/category/{{this.category}}">{{this.category}}</a></div> 
    <p>{{this.body}}</p> 
    <!--<div class="tags"><a href="/tags/{{this.tags}}">{{this.tags}}</a></div>--> 
    <div class="tags"> 
    <ul> 
     {{#each ../tags}} 
     <li><a href="/tags/{{this}}">{{this}}</a></li> 
     {{else}} 
    </ul> 
    </div> 
</article> 

{{else}} 
<p class="empty">No content</p> 
{{/each}} 

如果我使用:

<div class="tags"><a href="/tags/{{this.tags}}">{{this.tags}}</a></div>

比他們將插入作爲一個整體。有沒有辦法逐一訪問它們?

謝謝!

回答

0

我的不好,這是語法錯誤。我沒有關閉每個嵌套{{/each}},但我用{{else}}來代替。

{{#each data.[0].articles}} 
<article class="id-{{this.id}}"> 
    <h1><a href="/journal/{{this.url}}">{{this.title}}</a></h1> 
    <div class="category"><a href="/category/{{this.category}}">{{this.category}}</a></div> 
    <p>{{this.body}}</p> 
    <!--<div class="tags"><a href="/tags/{{this.tags}}">{{this.tags}}</a></div>--> 
    <div class="tags"> 
    <ul> 
     {{#each tags}} 
     <li><a href="/tags/{{this}}">{{this}}</a></li> 
     {{/each}} 
    </ul> 
    </div> 
</article> 

{{else}} 
<p class="empty">No content</p> 
{{/each}}