javascript - 如何使用 Handlebars 迭代对象?

标签 javascript templates handlebars.js

使用 Handlebars.js 迭代数组很容易,例如:

{{#each comments}}
<div class="comment">
  <h2>{{title}}</h2>
  {{{{url}}}
</div>
{{/each}}
和一个数组,如:
{
  comments: [
   { url: "http://www.yehudakatz.com", title: "Katz Got Your Tongue" },
   { url: "http://www.sproutcore.com/block", title: "SproutCore Blog" }, 
  ]
}
但我没有找到迭代对象的方法,例如:
{
  headers: { 
     "Host": "www.example.com", 
     "Location": "http://www.example.com",

     ... Much more map items ... 
  }
}
有什么方法可以用 Handlebars.js 迭代对象吗?还是我必须像这样重组对象:
{
  headers: [
   { key: "Host", value: "www.example.com" },
   { key: "Location", value: "http://www.example.com" }, 
  ]
}

最佳答案

现在支持:

{{#each headers}}
    Key: {{@key}}, Value: {{this}}
{{/each}}

关于javascript - 如何使用 Handlebars 迭代对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9838925/

相关文章:

javascript - jQGrid - 更改列的顺序

没有模板参数的 C++ 模板?

c++ - 使用模板的运算符重载

c++ - 这个图案的名字是什么?

ember.js - 从另一个助手调用 Handlebars block 助手

handlebars.js - Handlebars 模板中带有斜线的部分会导致错误

javascript - 查找并替换@foo的实例,但不替换@@foo的实例

javascript - 如何为 d3 中的实时图表提供实时数据

javascript - 所有浏览器的 Object.defineProperty?

c# - 添加 json :Array attribute to an xml node before serializing 时出现意外结果