2017-09-05 80 views
0

夥計。我剛剛開始使用Handlebars,因此,我的問題看起來可能有點「不好意思」。我有一個二維數組(它是第一行中的數據),我應該循環並呈現信息。在正常情況下,這很簡單。但是,嘗試在第二個循環內創建路徑路徑時會出現問題。 <p><a href="/polls/categories/{{name}}">{{title}}</a></p>中的'name'應該與<th scope="row">{{name}}</th>中的'name'相同。我如何轉義嵌套數組(循環)以獲取父對象'name'鍵的值,data,array?如何使用把手渲染多維數組中的數據?

這裏的一個代碼段

{{#each data}} 
<tr> 
    <th scope="row">{{name}}</th> 
    <td> 
     {{#each polls}} 
     <p><a href="/polls/categories/{{name}}">{{title}}</a></p> 
     {{/each}} 
    </td> 
</tr> 
{{/each}} 

這裏的數據陣列,用於說明目的的一部分。

..., 
category: 'Sports', 
polls: [ 
    { 
     title: 'Most hated team in the NBA', 
     choices: ['Golden State Warriors', 'LA Lakers', 'Cleveland Cavaliers', 'New York Knicks', 'Boston Celtics'], 
    }, 
    { 
     title: 'Best (active) boxer pound for pound', 
     choices: ['Roman Gonzalez', 'Terence Crawford', 'Andre Ward', 'Gennady Golovkin', 'Vasyl Lomachenko'], 
    }, 
    { 
     title: 'Greatest football (soccer) player of all time', 
     choices: ['Lionel Messi', 'Diego Maradona', 'Johann Cruyff', 'Pele', 'Alfredo di Stefano'], 
    } 
], 
... 

回答

1

Handlebars中有一個../語法,允許您使用父上下文。使用您的polls循環應該是:

{{#each polls}} 
<p><a href="/polls/categories/{{../name}}">{{title}}</a></p> 
{{/each}} 

他們在他們的official page類似的例子是使用相同的語法:

<h1>Comments</h1> 

<div id="comments"> 
    {{#each comments}} 
    <h2><a href="/posts/{{../permalink}}#{{id}}">{{title}}</a></h2> 
    <div>{{body}}</div> 
    {{/each}} 
</div> 
+0

哦,謝謝你,夥計!剛剛通過官方文檔,但有點急於讓代碼工作。 –