Il tuo unico problema è provare a iterare un cursore e un sottoarray all'interno dello stesso ogni blocco. Se separi i tuoi items
modello e un singolo item
modello, otterrai il risultato desiderato.
Per motivi di semplificazione, ho modificato il tuo codice in modo che assomigli a questo:
Questo è il tuo corpo principale:
<body>
{{> items}}
</body>
<template name="items">
{{#each items}}
{{> item}}
{{/each}}
</template>
<template name="item">
<h2>{{itemText}} tags are:</h2>
<ul>
{{#each itemTags}}
<li>{{this}}</li>
{{/each}}
</ul>
</template>
E questo è il tuo aiuto:
Template.items.helpers({
items: function () {
return Items.find();
}
})
Supponendo che un documento dell'elemento assomigli a:
{
itemText: String,
itemTags: Array
}
Ho creato un'app su Meteorpad con cui puoi giocare:
http://meteorpad.com/pad/BmRQ5fkwWEMBKszJW/SO-27951102
puoi modificare ulteriormente il codice lì e vedere le modifiche in tempo reale. Fondamentalmente è jsfiddle per meteor.
Modifica: ispirato dal commento di @chip-castle, puoi infatti utilizzare un unico template con each
annidato blocchi:
<template name="items">
{{#each items}}
<h2>{{itemText}} tags are:</h2>
<ul>
{{#each itemTags}}
<li>{{this}}</li>
{{/each}}
</ul>
{{/each}}
</template>
Ma l'utilizzo di modelli separati è più flessibile sia nella progettazione che nella gestione degli eventi ove necessario.