JsRenderを使用してテンプレートをクライアント側でレンダリングしています。ただし、配列またはオブジェクトのみを受け入れるように見えるため、forループタグを使用してブロックのhtml部分を繰り返すことはできません。代わりに、JSONは数値(ブロックを繰り返す必要がある回数)である変数を返します。JsRenderを使用してhtmlをN回繰り返すにはどうすればよいですか?
質問する
2226 次
2 に答える
4
最後の要素を定義するだけでよい方法でjavascript配列が機能しているため、追加のループは必要ないため、@webdeveloperの回答を拡張しました。
$.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 に答える