Handlebars.js: iteración anidada con capacidad para acceder a los padres

Creado en 18 oct. 2011  ·  5Comentarios  ·  Fuente: handlebars-lang/handlebars.js

Comentario más útil

{{#each families}}
  {{#each members}}
    <p>{{ ../surname }}</p>
    <p>{{ name }}</p>
  {{/each}}
{{/each}}

Todos 5 comentarios

Un enfoque simple sería registrar un ayudante:

{{#each animals}}
  {{#each organs}}
    {{get .. this}}
  {{/each}}
{{/each}}
Handlebars.registerHelper('get', function(obj, prop) {
  return obj[prop];
});

Lamento traer de vuelta este problema, pero no veo cómo este ayudante 'get' dará acceso al padre a menos que creemos referencias circulares.

¿Podría ampliar lo que quiere decir con "{{get .. this}}"? Si esto es un órgano, ¿cómo podemos usarlo para encontrar el animal padre?

Me gustaría usar handlebars.js para iterar sobre una lista de familias y luego iterar sobre los miembros de esa familia. Dentro de ambos bucles, quiero mostrar las propiedades de ambos. Sin embargo, una vez que entro en la segunda iteración, ninguna de las variables familiares es visible.

{{#each families}}
  {{#each members}}
    <p>{{ ( here I want a family name property ) }}</p>
    <p>{{ ( here I want a member name property ) }}</p>
  {{/each}}
{{/each}}

¿Es esto posible con manillar? Si no, está bien. ¡Agradecería mucho cualquier ayuda!

{{#each families}}
  {{#each members}}
    <p>{{ ../surname }}</p>
    <p>{{ name }}</p>
  {{/each}}
{{/each}}

hola chicos, estoy aprendiendo node/express en este momento, el código anterior no funcionará para mí, estoy usando express-handlebars, ¿pueden ayudarme? ¿Es esto posible con los manillares express? aquí está mi código. gpareaData está iterando pero la rama no

{{#each gpareaData}}
  <tr>
    <td>
       <select class="form-control" name="gp_branch[]">
           <option value="{{id}}">{{desc}}</option>
             {{#each branch}}
           <option value="{{id}}">{{branch_desc}}</option>
             {{/each}}
       </select>        
     </td>
    <td><button type="button" class="btn btn-primary btn-sm" id="addRws3"><i class="fa fa-plus"></i></button></td>
</tr>
{{/each}}

{{#toda la información}}
todo

{{#datos asignados}}
asignado


{{#ifEqual id id_del_curso }}
{{título}}

{{demás}}
{{título}}

{{/ifEqual}}

{{/datos asignados}}
{{/toda la información}}
El control de mi aplicación ni siquiera está entrando en el bucle interno. solo imprimiendo
todo
todo
todo
¿Puedes decirme porque?
¿Fue útil esta página
0 / 5 - 0 calificaciones