Вы можете использовать синтаксис, подобный следующему: {{each(index, value) array}}
, чтобы иметь четкое представление об индексе / значении того, на что вы зацикливаетесь.{{each}}
также может перебирать свойства объекта.
Итак, если бы у вас были такие данные:
var data = {
testA: {
testA1: {
testA1A: "blahA1A",
testA1B: "blahA1B"
},
testA2: {
testA2A: "blahA2A",
testA2B: "blahA2B"
}
},
testB: {
testB1: {
testB1A: "blahB1A",
testB1B: "blahB1B"
},
testB2: {
testB2A: "blahB2A",
testB2B: "blahB2B"
},
}
};
Вы могли бы написать такой шаблон:
<script id="contentTmpl" type="text/html">
<ul>
{{each(i, item) $data}}
<li>${i}</li>
<ul>
{{each(j, subItem) item}}
<li>${j}</li>
<ul>
{{each(k, subSubItem) subItem}}
<li>${k} = ${subSubItem}</li>
{{/each}}
</ul>
{{/each}}
</ul>
{{/each}}
</ul>
</script>
Пример здесь: http://jsfiddle.net/rniemeyer/8PLGP/