我试图创建一个使用Handlebars迭代JavaScript对象的模板。 我当前的对象如下所示:
var countries = {
"USA" : {
"Alabama" : {
"Birmingham" : 371,
"Montgomery" : 8771
},
"Alaska" : {
"Anchorage" : 9918,
"Nome" : 8171
},
"Wyoming" : {
"Casper" : 718,
"Cody" : 888
},
"Canada" : {
"Alberta" : {
"Calgary" : "Z871"
},
"British Columbia" {
"Vancouver" : "B88C",
"Victoria" : "C99A"
}
};
现在,当我想在下拉列表中的模板中显示它时,我将HTML设置为:
{{#each countries.USA}}
<option>{{what comes here}}</option>
{{/each}}
在选项元素中,我想显示像阿拉巴马州,阿拉斯加州,怀俄明州等州。但是我很难找到这样做的语法。如果我在控制台中记录它,我会得到具有它的属性(伯明翰,蒙哥马利),但不是对象的名称(阿拉巴马州)。
如果有人可以帮我弄清楚语法,以获得值得赞赏的对象的名称。感谢。
更新:要获取对象的名称,可以使用{{@key}}。从Handlebars网站上的文档:&#34;此外,对于对象迭代,{{@ key}}引用了当前的密钥名称&#34;