访问JSON数组中的键名

时间:2018-07-16 15:42:19

标签: javascript handlebars.js

我需要在句柄模板内访问JSON数组中的键名。我的JSON数组如下所示。

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="root"></div>

以下是我的车把模板。我需要访问键值以及相关键的值。

    {
   "attributes":[
      {
         "name":"malintha"
      },
      {
         "age":"29"
      },
      {
         "marks":"81"
      }
   ]
}

预期输出为

    {{#attributes}}
        <{{#key}}>{{#value}}</{{#key}}>
    {{/attributes}}

但是我没有得到预期的输出。我该怎么办?

2 个答案:

答案 0 :(得分:1)

您必须使用#each函数,并迭代JSON数组。

然后,您必须使用相同的函数迭代对象中的每个属性,并使用@key访问属性名称:

{{#each attributes}}
  {{#each this}}
    <{{@key}}>{{this}}</{{@key}}>
  {{/each}}
{{/each}}

答案 1 :(得分:0)

根据稍后添加的评论,我将答案更改为“签出每个帮助对象”。

https://guides.emberjs.com/release/templates/displaying-the-keys-in-an-object/

尽管我可能仍会考虑将“属性”数据重构为单个字典(在从任何地方接收数据的处理程序中),通过迭代“属性”,并使用“ Object.keys”来获取键等。