使用Handlebar JS和Ember JS在JSON上循环

使用Handlebar JS和Ember JS在JSON上循环,json,ember.js,handlebars.js,Json,Ember.js,Handlebars.js,我正在学习余烬JS和车把JS,所以我对这方面非常陌生。我在尝试循环使用以下JSON时遇到了一个问题 这是我的JSON: { "sgt_rules": { "app_tags": {}, "city": [], "consumer_tags": [], "device_tags": { "os": [ "ios" ] },

我正在学习余烬JS和车把JS,所以我对这方面非常陌生。我在尝试循环使用以下JSON时遇到了一个问题

这是我的JSON:

{
    "sgt_rules": {
        "app_tags": {},
        "city": [],
        "consumer_tags": [],
        "device_tags": {
            "os": [
                "ios"
            ]
        },
        "participation": null,
        "registration": null
     }
}
这是我的车把模板:

<h2>{{controllers.segment.sgt_name}}</h2>

<script type="text/x-handlebars" data-template-name="pull">
  <ul>
    <li>{{getsegmentrules}}</li>
  </ul>

</script>
我尝试过这个,但不起作用:

<script type="text/x-handlebars" data-template-name="pull">
<ul>
 <li>{{controllers.segment.sgt_rules}}</li>
 {{#each segment in controllers.segment.sgt_rules}}
      <li>App Tags: {{segment.app_tags}} <br /> City: {{segment.city}} <br />
          Consumer Tags: {{segment.consumer_tags}} <br /> Device Tags: {{segment.device_tags}} <br />
          Participation: {{segment.participation}} <br /> Registration: {{segment.registration}} <br />
        <ul>
          {{#each obj in segment.device_tags}}
            <li>{{obj.os}}</li>
          {{/each}}
          </ul>
       </li>
 {{/each}}
</ul>
</script>

  • {{controllers.segment.sgt_rules}
  • {{{#控制器中的每个段.段.sgt#U规则}
  • 应用程序标签:{{segment.App_标签}}
    城市:{{segment.City}}
    消费者标签:{{segment.Consumer_标签}}
    设备标签:{{segment.Device_标签}}
    参与:{{segment.Participation}
    注册:{{segment.Registration}}
      {{{#段中的每个obj.device_tags}
    • {{obj.os}
    • {{/每个}}
  • {{/每个}}

我错过了什么?我还需要编写任何帮助函数吗?

您不应该在这里返回一个值吗

   getsegmentrules: function () {
      var model = this.get('content').get('sgt_rules');
      return model;
   }.property()});

另外,您在哪里设置JSON数据?

通过
controllers.segment.sgt_rules
从Handlebar我已经得到了JSON。
   getsegmentrules: function () {
      var model = this.get('content').get('sgt_rules');
      return model;
   }.property()});