Váš jediný problém je pokus iterovat kurzor a podpole v rámci každého bloku. Pokud oddělíte items
šablonu a jednotlivou item
šablony, skončíte s požadovaným výsledkem.
Pro zjednodušení jsem váš kód upravil tak, aby vypadal takto:
Toto je vaše hlavní tělo:
<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>
A toto je váš pomocník:
Template.items.helpers({
items: function () {
return Items.find();
}
})
Za předpokladu, že dokument položky vypadá takto:
{
itemText: String,
itemTags: Array
}
Na Meteorpadu jsem vytvořil aplikaci, se kterou si můžete hrát:
http://meteorpad.com/pad/BmRQ5fkwWEMBKszJW/SO-27951102
můžete zde dále upravovat kód a vidět změny v reálném čase. Je to v podstatě jsfiddle pro meteor.
Upravit: inspirováno komentářem @chip-castle, můžete ve skutečnosti použít jedinou šablonu s vnořenými each
bloky:
<template name="items">
{{#each items}}
<h2>{{itemText}} tags are:</h2>
<ul>
{{#each itemTags}}
<li>{{this}}</li>
{{/each}}
</ul>
{{/each}}
</template>
Použití samostatných šablon je však flexibilnější jak při návrhu, tak při zpracování událostí tam, kde je to nutné.