8

.NET Web API で記述された既存のサービスがあります。

例として、このサービスは次の形式で JSON を返します。

[
  { "id": 1, "name": "John" },
  { "id": 2, "name": "Jane" }
]

ただし、Ember.js Rest Adapter documentationに従って、Ember は次の形式の JSON を想定します。

{
  "persons": [
    { "id": 1, "name": "John" },
    { "id": 2, "name": "Jane" }
  ]
}

このため、Ember は次のエラーを返しています: サーバーはキー 0 のハッシュを返しましたが、そのためのマッピングがありません

サービス API とそれがデータを返す方法を変更するつもりはありません。

Ember.js (最新バージョン) を取得して、サービスが返す既存のデータを処理することはできますか? もしそうなら、どうすればそれを実装できますか?

4

3 に答える 3

5

Ember はその意味で非常に柔軟で、アプリを任意のバックエンド API と統合するためにアダプターとシリアライザーを拡張する機能を提供します。

Ember.js Template for Web APIの一部である WebAPIAdapter を取得する必要があります。

さらに、同じテンプレートに基づいて、例として私が書いたこのプロジェクトを調べたいと思うかもしれません(私が自分で行ったいくつかの変更があります)。これはまだ開発中であり、(まだ) すべてのベスト プラクティスを備えているわけではありませんが、有効な例だと思います。

また、このレポ/ライブラリ( NuGet を介してインストールすることもできます) も調べてください。これにより、Handlebars テンプレートをEmber.TEMPLATESコレクションに直接プリコンパイルできます。

于 2013-04-05T17:25:21.823 に答える