如何用把手迭代自定义内部数组对象?

时间:2016-07-21 04:24:36

标签: meteor iteration handlebars.js

我正在尝试迭代自定义内部数组对象“选择”。见下面的例子,“选择”里面可以有不同数量的对象。

{
       _id:  1,
"question": "a",
"choices": [
           {"a" : 1},
           {"b" : "blablabla"},
           {"c" : 128},
           {"d" : "blebleble"}
          ],
  "answer": "b",
  "points": "10"
},
{
       _id:  10,
"question": "j",
"choices": [
           {"a" : 10},
           {"b" : "blablabla"}
          ],
  "answer": "b",
  "points": "10"
}

我可以显示“问题”,“回答”,“积分”。

这是我在main.html中使用的模板

  <template name="question">
  <button>Click Me</button>
  {{#with object}}
      {{question}}
      {{#each choices}}
        ??
      {{/each}}
      {{answer}}
      {{points}}
  {{/with}}
  </template>

感谢任何帮助。如果你们需要更多信息,请告诉我。

1 个答案:

答案 0 :(得分:3)

您需要修改数据结构,如下所示

choices:[
          {key:"a",value:1},
          {key:"b",value:"bla"},
          {key:"c",value:"blabla"},
          {key:"d",value:"blablabla"}
        ]

现在在你的模板中

{{#each choices}}
<span>Your choice is {{key}}.{{value}}</span>
{{/each}}

应该有所帮助 谢谢