使用 Handlebars 循环 n 次

Posted

技术标签:

【中文标题】使用 Handlebars 循环 n 次【英文标题】:looping n times with Handlebars 【发布时间】:2018-06-14 00:20:58 【问题描述】:

这里已经有答案了 Iterating over basic “for” loop using Handlebars.js 但它来自 2012,所以也许我现在可以获得更好的解决方案。

我想循环 n 次。如果要创建 5 个容器,我想循环 5 次。

我用 NodeJs 渲染我的模板并尝试传递一个计数变量

res.render('myTemplate', 
   barCount: 3
);

目前我必须写

<div class="container">
</div>
<div id="bar3" class="bar"></div>

<div class="container">
</div>
<div id="bar2" class="bar"></div>

<div class="container">
</div>
<div id="bar1" class="bar"></div>

但我想写这样的东西

    #each barCount
        <div class="container"></div>        
        <div id="barbarCount - this + 1" class="bar"></div>
    /each

我还需要使用助手吗?

【问题讨论】:

阅读文档有什么问题?) 【参考方案1】:
res.render('myTemplate', 
  barCount: [3, 2, 1] // or use lodash range function
);

#each barCount
    <div class="container"></div>        
    <div id="barthis" class="bar"></div>
/each

【讨论】:

是的,我想过,但barCount: [3, 2, 1] 可能以意大利面条代码结尾.. 不知道

以上是关于使用 Handlebars 循环 n 次的主要内容,如果未能解决你的问题,请参考以下文章

handlebars

handlebars,each循环里面套each循环

循环遍历嵌套 Handlebars 导入数组中的特定元素的问题

handlebars 判断要加表达式怎么加

Meteor & Handlebars:每 N 项后的新行

Android - 每 5 秒循环一次部分代码