我正在使用JsRender来呈现模板客户端。但是,我无法使用for循环标记来重复块的html部分,因为它似乎只接受数组或对象。相反,我的JSON返回一个变量,它是一个数字(我应该重复该块的次数)。如何使用JsRender重复html N次?
答案 0 :(得分:3)
我不确定,JsRender是否提供此功能。您可以编写自己的标记,例如:Example Scenario: Creating custom helpers to iterate through fields
$.views.helpers({
getFields: function( count ) {
var fieldsArray = [];
for (var i=0; i < count; i++) {
fieldsArray.push({});
}
return fieldsArray;
}
});
答案 1 :(得分:2)
我扩展了@webdeveloper的答案,因为不需要额外的循环,因为javascript数组的工作方式只需要定义最后一个元素
$.views.helpers({
repeatLoop: function( count ) {
if (!count) return [];
var repeat = [];
repeat[count-1] = {};
return repeat;
}
});
然后用作
@{{for ~repeatLoop(10)}}
{{:#index+1}}
@{{/for}}