我已经开始学习handlebar.js了。我正在努力展示json数据。
我的json看起来像这样:
var data={
"record1":
[
{
"first":
[
{
"name":"john",
"city":"newyork"
},
{
"name":"britto",
"city":"bangalore"
}
]
},
{"second":
[
{
"name":"franklin",
"city":"newyork"
},
{
"name":"leo",
"city":"bangalore"
}
]
}
]
};
这里这个json来自服务器响应,所以我不知道任何关键和价值。我必须使用把手动态显示键和值...我已尝试使用eachKey,但我没有得到解决方案。任何人都可以帮助我吗?
答案 0 :(得分:28)
您可以在Handlebars模板中渲染列表的键/值,如下所示:
{{#each object}}
{{@key}}: {{this}}
{{/each}}
答案 1 :(得分:2)
首先,谢谢你,这确实导致我需要获得密钥。
如果不清楚OP“this”指的是该迭代的当前对象。
因此,在您的案例数据中,对象具有数组record1,其中包含2个对象数组对象:第一个和第二个。
使用每个:
{{#each record1}}
{{@key}}: {{this}}
{{/each}}
会给你: 第一:(对象,数组) 第二:(对象,数组)
您将循环遍历对象(数据)。在这种情况下如果你想挖掘你需要一个计数器来进一步。我建议使用把手块助手来到那里。
答案 2 :(得分:2)
对象:
{{#each myObject}}
Key: {{@key}} Value = {{this}} //renders object like {key: value}
{{/each}}
请注意,只会枚举通过hasOwnProperty
测试的属性。
对于数组:
{{#each myArray}}
Index: {{@index}} Value = {{this}}
{{/each}}