我正在使用 JsRender 来呈现模板客户端。但是,我无法使用 for 循环标记来重复块的 html 部分,因为它似乎只接受数组或对象。相反,我的 JSON 返回一个数字变量(我应该重复该块的次数)。如何使用 JsRender 重复 html N 次?
问问题
2226 次
2 回答
4
我扩展了@webdeveloper 的答案,因为不需要额外的循环,因为 javascript 数组的工作方式只需要定义最后一个元素
$.views.helpers({
repeatLoop: function( count ) {
if (!count) return [];
var repeat = [];
repeat[count-1] = {};
return repeat;
}
});
然后用作
@{{for ~repeatLoop(10)}}
{{:#index+1}}
@{{/for}}
于 2016-02-27T17:35:24.467 回答
3
我不确定 JsRender 是否提供了这个功能。您可以编写自己的标签,如下所示:示例场景:创建自定义助手以遍历字段
$.views.helpers({
getFields: function( count ) {
var fieldsArray = [];
for (var i=0; i < count; i++) {
fieldsArray.push({});
}
return fieldsArray;
}
});
演示:http: //jsfiddle.net/6UeZC/
于 2012-10-24T17:30:56.740 回答