2013-12-14 1 views
2

Я использую шаблоны swig с помощью expressjs и пытаюсь сделать что-то, что, вероятно, очень просто, но я не смог найти пример где-нибудь.Как повторить блок кода X количество раз в шаблоне swig (expressjs)

У меня есть переменная, содержащая число, FOO.

У меня есть блок кода Я хочу повторить FOO раз.

в узле Я хотел бы сделать это:

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

В глотке есть {% для X в% Y} методе, но это требует массива для перебора. То, что я хочу, это то, что просто будет считать от 1 (или 0) до FOO и повторить блок кода для каждого из них.

Кажется, что это должно быть самое простое дело, но я просто не могу найти примеров. Любые указатели были бы очень оценены.

Джеймс

ответ

2

Вот глупый трюк:

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

Где loop.index ваша counter (1 на основе использования loop.index0, если вы хотите с 0).

2

Это также работает:

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

Где x это количество раз в цикле. Вызов конструктора в моем случае не по какой-либо причине.