Saj*_*mad 7 javascript handlebars.js meteor
我在meteorjs中有一个对象列表,我在meteorjs模板中迭代
{{#each objects}}
{{/each}}
Run Code Online (Sandbox Code Playgroud)
在模板中我想打印循环迭代的次数.也就是说,如果对象列表的长度为100,我想在模板中打印1到100的数字.我怎样才能做到这一点?
Aks*_*hat 11
如果不在助手中给出索引,就不能这样做
Template.yourtemplatename.object_with_index = function() {
var objects = Template.yourtemplatename.objects();
for(var i = 0; i=objects.length; i++) {
objects[i].index = i;
}
return objects;
}
Run Code Online (Sandbox Code Playgroud)
然后做:
{{#each object_with_index}}
<p>This is number {{index}}</p>
{{/each}}
Run Code Online (Sandbox Code Playgroud)
不是最漂亮的方式,但其他变化基本上会在引擎盖下做同样的事情(例如,如果你使用了map)
如果object是游标,则可以使用其map方法:
Template.yourtemplatename.objects = YourCollection.find().map(function(document, index){
document.index = index;
return document;
});
Run Code Online (Sandbox Code Playgroud)