每个其他人或号码的把手和MeteorJs [英] Handlebars and MeteorJs for every other or number
本文介绍了每个其他人或号码的把手和MeteorJs的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
$ b $我试图创建一个Handlebars.registerHelper(),它会将我的{{>模板}}包裹在{{each items}}中。 b
所以像这样;
{{forevery items 4}}
{{> item_row_template}}
{{/ forevery}}
期望的结果是每4项目围绕一个div。
< div class =row>
< div class =item_1>项目< / div>
< div class =item_2>项目< / div>
< div class =item_3>项目< / div>
< div class =item_4>项目< / div>
< / div>
< div class =row>
< div class =item_1>项目< / div>
< div class =item_2>项目< / div>
< div class =item_3>项目< / div>
< div class =item_4>项目< / div>
< / div>
etc ...
解决方案
你想要做的是创建一个帮助器,它将遍历列表并手动追加div。每一次都是这样。
这是一个例如:
Handlebars.registerHelper('forevery',function(context,limit,options){
var ret = ;
if(context.length> 0){
ret + =< div>;
for(var i = 0,j = context.length; i< j(i + 1)%limit === 0){
ret + = < / div>< div>;
}
}
ret + =< / div>;
}
return ret;
});
这个函数会遍历整个项目的数组,并且每隔一行就会关闭一个div并打开一个新的一个。所以这就是所谓的:
{{#forevery items 3}}
{{> item_row_template}}
{{/ forevery}}
希望这有助于:)
I'm trying to create a Handlebars.registerHelper() that would wrap my {{>template}} in an {{each items}} for every number I enter.
So something like this;
{{forevery items 4}}
{{> item_row_template}}
{{/forevery}}
The desired result would be for every 4 items wrap it around a div.
<div class="row">
<div class="item_1">item</div>
<div class="item_2">item</div>
<div class="item_3">item</div>
<div class="item_4">item</div>
</div>
<div class="row">
<div class="item_1">item</div>
<div class="item_2">item</div>
<div class="item_3">item</div>
<div class="item_4">item</div>
</div>
etc...
解决方案
what you want to do is create a helper that will iterate over the list and manually append the divs every so often.
Here is an example:
Handlebars.registerHelper('forevery', function(context, limit, options) {
var ret = "";
if (context.length > 0) {
ret += "<div>";
for(var i=0, j=context.length; i<j; i++) {
ret = ret + options.fn(context[i]);
if ( (i+1) % limit === 0 ) {
ret += "</div><div>";
}
}
ret += "</div>";
}
return ret;
});
This function will loop through the array of items and every nth row it will close a div and open a new one. So this would be called like:
{{#forevery items 3}}
{{> item_row_template}}
{{/forevery}}
Hope this helps :)
这篇关于每个其他人或号码的把手和MeteorJs的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文