2

我正在使用带有 expressjs 的 swig 模板并尝试做一些可能非常简单的事情,但我无法在任何地方找到示例。

我有一个包含数字 FOO 的变量。

然后我有一段代码我想重复 FOO 次。

在节点中我会这样做:

var FOO=5;
for(var counter=1;counter<FOO;counter++)
{
    console.log('This is line #' + counter);
}

在 swig 中有 {% for X in Y %} 方法,但这需要一个数组来迭代。我想要的是简单地从 1(或 0)计数到 FOO 并为每个重复一个代码块的东西。

似乎这应该是最简单的事情,但我似乎找不到任何例子。任何指针将不胜感激。

詹姆士

4

2 回答 2

2

这是一个愚蠢的技巧:

{% for i in Array.prototype.constructor.call(null, FOO) %}
  {{ loop.index }}.
{% endfor %}

loop.index您的位置在哪里(基于 1,如果您想要基于 0 counter,请使用)。loop.index0

于 2013-12-14T06:52:53.423 回答
2

这也有效:

{% for i in Array(x) %}
  {{ loop.index }} 
{% endfor %}

x循环的次数在哪里。无论出于何种原因,在我的情况下都没有调用构造函数。

于 2015-05-04T20:43:49.970 回答