Ich verstehe, wie man die Datenquelle innerhalb von Lenker transversiert, aber ich bin über eine Situation gestolpert, die ich nicht ausarbeiten kann.Handlebars.js - Abrufen des übergeordneten Kontextes innerhalb einer jeden Schleife, einer if-Anweisung und eines untergeordneten Objekts
Mit "../" können Sie den übergeordneten Vorlagenbereich erreichen, aber beim Durchlaufen des untergeordneten Objekts eines Objekts scheint es das Objekt und nicht das untergeordnete Objekt zurückzugeben.
{{#each content.items}}
{{#if prop}}
<p>{{prop}} + {{../../variable}}</p>
{{/if}}
{{/each}}
Der obige Code-Schnipsel funktioniert gut, wenn Sie durch ein Objekt namens ‚Inhalt‘ iterieren aber sobald man durch sie durchlaufen ist Kind ‚content.items‘ es nicht mehr gibt den richtigen Rahmen.
Hier ist eine Geige, die das Problem zeigt. http://jsfiddle.net/sidonaldson/MDdn2/
Kann jemand Licht auf was falsch ist werfen?
Ich bin nicht ganz sicher, was mit Ihrem aktuellen Code vor sich geht, aber eine einfache Lösung wäre, den '{{mit}} 'Helfer zu verwenden, um den äußeren Bereich zu speichern. Es wäre wahrscheinlich auch einfacher zu lesen. – GJK
GJK - wenn Sie das in einer Antwort demonstrieren wollen, werde ich es als solches markieren. Irgendwie klingt das, was ich brauche! – sidonaldson
'# if' erstellt ein neues Nest, so dass ich nur daran denken kann, dass es aus dem Eltern-Nest herausspringt, genau darüber. Ich bin nicht sicher, ob es Ihre Frage beantwortet, aber für die Nachwelt scheint das Hinzufügen des #if nest und des Inhaltsnests zum Pfad zu funktionieren ... '
{{prop}} + {{../../content/variable }}
'http://jsfiddle.net/MDdn2/3/ – Shanimal