आपकी एकमात्र समस्या प्रत्येक ब्लॉक के भीतर एक कर्सर और एक उप सरणी को पुन:सक्रिय करने का प्रयास कर रही है। अगर आप अपने items
. को अलग करते हैं टेम्पलेट और एक व्यक्तिगत items
टेम्पलेट, आप अपने वांछित परिणाम के साथ समाप्त होंगे।
सरलीकरण के लिए, मैंने आपके कोड को इस तरह दिखने के लिए बदल दिया है:
यह आपका मुख्य शरीर है:
<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>
और यह आपका सहायक है:
Template.items.helpers({
items: function () {
return Items.find();
}
})
मान लें कि कोई आइटम दस्तावेज़ ऐसा दिखता है:
{
itemText: String,
itemTags: Array
}
मैंने आपके साथ खेलने के लिए Meteorpad पर एक ऐप बनाया है:
http://meteorpad.com/pad/BmRQ5fkwWEMBKszJW/SO-27951102
आप वहां कोड को और बदल सकते हैं और रीयलटाइम में बदलाव देख सकते हैं। यह मूल रूप से उल्का के लिए jsfiddle है।
संपादित करें: @ चिप-कैसल की टिप्पणी से प्रेरित होकर, आप वास्तव में नेस्टेड each
के साथ एकल टेम्पलेट का उपयोग कर सकते हैं ब्लॉक:
<template name="items">
{{#each items}}
<h2>{{itemText}} tags are:</h2>
<ul>
{{#each itemTags}}
<li>{{this}}</li>
{{/each}}
</ul>
{{/each}}
</template>
लेकिन जहां आवश्यक हो वहां अलग-अलग टेम्प्लेट का उपयोग डिज़ाइन और हैंडलिंग ईवेंट दोनों में अधिक लचीला होता है।