我对nunjucks还是很陌生,根据我的阅读,这是不可能的,但是我想知道是否有人想出一种方法来做到这一点。
我基本上希望在nunjucks模板中基于值而不是对象的大小执行for循环。
假设您将以下数据传递给模板。假设房间数是<select>
元素中所选选项的值:
data : {
numberOfRooms : 4
}
在传统的JS中,我可以编写一个for循环并根据
numberOfRooms
值限制循环:for (var i = 0; i < data.numberOfRooms; i ++) {
// do something...
}
我的最终目标是在Nunjucks模板中编写一个循环,该循环将重复标记X块的次数,其中X是numberOfRooms值。
因此,如果可能的话,一个人如何通过Nunjucks实现这一目标?如果这完全违背了Nunjucks的目的,请说,任何其他建议将不胜感激。
最佳答案
您应该能够使用range
构造-https://mozilla.github.io/nunjucks/templating.html#range-start-stop-step
{% for i in range(0, data.numberOfRooms) -%}
{{ i }},
{%- endfor %}