0

我目前正在像这样迭代模板中的一组项目(为简单起见更改了名称):

{{#myArray}}
  <tr>
    <td>{{name}}</td>
    <td>{{type_id}}</td>
    <td>{{anotherArray[type_id].name}}</td>
  </tr>
{{/myArray}}

其中anotherArraytype_id 作为其键和值的名称属性。

我已经测试并且 type_id 确实打印了它的值,当我在 chrome javascript 控制台中查找我的数组时,它可以找到数组索引(和 name 属性)就好了。

each我应该如何在 Mustache.js中正确查找带有当前循环变量的数组?

4

1 回答 1

0

Mustache 是故意简单的,因此您可以在模板中做的很少。如果除了简单的迭代 ( {{#ary}}) 和插值 ( {{val}}) 之外,您还需要其他任何东西,那么您必须在模板看到之前在 JavaScript 中预处理数据:

var data = [ ];
for(var i = 0; i < myArray.length; ++i)
    data.push({
        name: myArray[i].name,
        type_id: myArray[i].type_id,
        other_name: anotherArray[myArray[i].type_id]].name
    });

然后你会喂给data这样的模板:

{{#data}}
  <tr>
    <td>{{name}}</td>
    <td>{{type_id}}</td>
    <td>{{other_name}}</td>
  </tr>
{{/data}}
于 2013-04-19T04:52:50.010 回答