如何在Handlebars中获取名称-值对的名称

How can I get the names of name-value pairs in Handlebars?

本文关键字:获取 Handlebars      更新时间:2024-06-14

我有这样的数据结构:

flavors": {
            "sour": 0.16666666666666666,
            "salty": 0.16666666666666666,
            "sweet": 0,
            "meaty": 0.16666666666666666,
            "bitter": 0.16666666666666666
        }

我的html是这样的:

<p>Flavors:</p>
   <ul>
     {{#Flavors}}
           <li>{{Flavours.Name}}</li>  // doesn't work  //
        {{/Flavors}}
     </ul>

我想做的是了解味道的名称:即咸味、酸味等。我希望能够满足JSON中的任意值,而不是在html块中对它们进行编码。

您可以通过以下方式迭代对象:

{{#each myObject}}
    Key: {{@key}} Value = {{this}}
{{/each}}

有关详细信息,请查看以下帖子:Handlebars/Mustache-是否有一种内置的方法来循环对象的属性?

我的问题的答案在这个页面上:Handlebars/Mustache-是否有一种内置的方法来遍历对象的属性?

这是本的答案。工作确实很好!

遍历json并使用key获取属性名称。

for (var key in obj) {
   alert(' name=' + key + ' value=' + obj[key]);
   // do some stuff here
}

您的模板应该如下所示:

<p>Flavors:</p>
<ul>
 {{#each flavours}}
       <li>{{@key}}</li>
    {{/each}}
 </ul>

根据网站上的文件。