Mustache迭代数组的对象

时间:2017-03-14 14:49:31

标签: javascript html node.js mustache

我正在寻找迭代数组对象列表

这是我的示例对象

var Categories =    {
      "communication": [
        {
          "id": "communication_001",
          "category": "communication",
          "lastModified": "4 Day ago"
        },
        {
          "id": "communication_002",
          "category": "communication",
          "lastModified": "1 Day ago"
        }
      ],
      "social": [
        {
          "id": "social_001",
          "category": "social",
          "lastModified": "2 Day ago"
        }
      ],
      "storage": [
        {
          "id": "storage_001",
          "category": "storage",
          "lastModified": "3 Day ago"
        }
      ]
    }

这里我正在使用小胡子

var htmlTemplate= Mustache.render(template, { connectors: Categories });

那么我的编译模板是什么?

建议胡子模板。

1 个答案:

答案 0 :(得分:1)

可能的模板:

{{#connectors}}
        Communication<br>
    {{#communication}}
        {{id}} - {{category}} - {{lastModified}}<br>
    {{/communication}}
    <br><br>Social<br>
    {{#social}}
        {{id}} - {{category}} - {{lastModified}}<br>
    {{/social}}
    <br><br>Storage<br>
    {{#storage}}
        {{id}} - {{category}} - {{lastModified}}<br>
    {{/storage}}
{{/connectors}}

这会产生这个:

Communication
communication_001 - communication - 4 Day ago
communication_002 - communication - 1 Day ago


Social
social_001 - social - 2 Day ago


Storage
storage_001 - storage - 3 Day ago

要迭代我正在使用sections的列表,这将根据列表是否为空而表现不同:

  • 空列表:不会呈现部分
  • 非空列表:这些部分将在列表的每个元素上呈现一次,该部分的上下文设置为当前项目,允许您调用它的属性并循环遍历列表。

但是你可以在模板中做更多的事情,所以你应该检查documentation