0

私は ember を初めて使用します... 私が見つけることができる JSON に関連するすべてのものは、私が使用する予定のない ember-data を使用しています (REST API ではなく xml があります)。

現時点で私がやろうとしているのは、sideNav.json データをアプリケーション テンプレートにロードすることだけです。

sideNav.json:

[
    {
        "label": "Overview",
        "pageClass": "nav-home",
        "iconClass": "icon-overview",
        "link": "index.html"
    }, {
        "label": "Total Energy",
        "pageClass": "nav-totalEnergy",
        "iconClass": "icon-meter",
        "link": "totalEnergy.html"
    }
]

テンプレート:

<script type="text/x-handlebars" data-template-name="application">
    <div id="sideNav">  
        <ul>
            {{#each model}}
            <li {{bindAttr href="link"}}>
                <a {{bindAttr class="pageClass"}}>
                    <i {{bindAttr class="iconClass"}}></i><p>{{label}}</p>
                </a>
            </li>
            {{/each}}
        </ul>
    </div>
</script>

現時点では、次のようにこの作業を行っています。

App.ApplicationRoute = Ember.Route.extend({
  model: function() {
    return [
      {
        label: "Overview",
        pageClass: "nav-home",
        iconClass: "icon-overview",
        link: "index.html"
      },
      {
        label: "Total Energy",
        pageClass: "nav-totalEnergy",
        iconClass: "icon-meter",
        link: "totalEnergy.html"
      }
    ];
  }
});

しかし、このデータを別のJSONファイルに保存したいのですが、 $.ajax() を使用してデータを取得することを考えていましたが、それが最善の方法だとは思いません。

ありがとう

4

1 に答える 1

0

静的データになるだけですか、それともサーバーへの呼び出しを計画していますか? その静的 json ファイルを変更できない場合は、Ember.$.ajax() を使用してください。jsonファイルを変更できる場合は、jsファイルに変更して、ページに含めて、次のようにします...

 App.SideNavFixture = [
   {
    "label": "Overview",
    "pageClass": "nav-home",
    "iconClass": "icon-overview",
    "link": "index.html"
   }, {
    "label": "Total Energy",
    "pageClass": "nav-totalEnergy",
    "iconClass": "icon-meter",
    "link": "totalEnergy.html"
   }
 ];

 App.ApplicationRoute = Ember.Route.extend({
   model: function() {
     return App.SideNavFixture;
   }
 });
于 2013-08-09T01:17:46.517 に答える