テンプレート内でこれを行いたい場合は、独自のヘルパーを追加できます。このようなもの:
Handlebars.registerHelper('each_with_class', function(ary, first, rest, options) {
if(!ary || ary.length == 0)
return options.inverse(this);
var result = [ ];
var context = null;
var cls = { cls: first };
for(var i = 0; i < ary.length; ++i) {
context = _({}).extend(ary[i], cls);
result.push(options.fn(context));
cls.cls = rest;
}
return result.join('');
});
次に、テンプレートは次のようになります。
{{#each_with_class pages "active" "static"}}
<div class="{{cls}}">
Same stuff you're doing now.
</div>
{{/each_with_class}}
ary[i]
途中で変更してもかまわない場合は、 を使用してコピーを作成するary[i].cls
代わりに、に直接割り当てることができます。_.extend
デモ: http://jsfiddle.net/ambiguous/ZMSQh/1/