2017-09-05 4 views
0

Jungs. Ich beginne gerade mit Lenker, als solche, meine Frage scheint ein bisschen 'nooby'. Ich habe ein zweidimensionales Array (es ist die Daten in der ersten Zeile) Ich soll durchlaufen und rendern die Informationen. Unter normalen Umständen ist dies einfach. Das Problem tritt jedoch auf, wenn versucht wird, den Routenpfad innerhalb der zweiten Schleife zu erstellen. Der 'Name' in <p><a href="/polls/categories/{{name}}">{{title}}</a></p> soll der gleiche sein wie der in <th scope="row">{{name}}</th>. Wie entkomme ich dem verschachtelten Array (Schleife), um den Wert zu erhalten, der dem Schlüssel 'Name' von dem Elternteil Daten, Array entspricht?Wie rende ich Daten aus einem mehrdimensionalen Array mit Lenker?

Hier ist ein Code-Snippet

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

Hier ist ein Teil der Daten Array, zur Illustration.

..., 
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'], 
    } 
], 
... 

Antwort

1

Es gibt eine ../ Syntax in Lenker, die Sie den übergeordneten Kontext verwenden. Mit, dass Ihre polls Schleife sein soll:

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

Sie ein ähnliches Beispiel in ihren official page haben, die die gleiche Syntax verwendet:

<h1>Comments</h1> 

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

Oh, danke, Mann! Ging gerade die offizielle Dokumentation durch, war aber irgendwie in Eile, um den Code zum Laufen zu bringen. –

Verwandte Themen