2

3 つのコンポーネントが必要な EmberJS アプリを作成しています。アイテムのリスト、各アイテムの詳細ビュー、および各アイテムの編集ビュー。この特定のケースでデータを管理する方法の良い説明や例は見つかりませんでした。

この要点で、私が今持っているものの単純化されたクリーンアップされた例を見つけることができます: https://gist.github.com/2390740

データのコピーを 2 つ持つことは避けたいのですが、データを詳細ビューに表示する唯一の方法は、データのコピーを作成することであり、これは理想とはほど遠いものです。

DetailController から ListController の配列内の項目を参照する方法はありますか? そうすれば、詳細ビューでアイテムが更新されると、リスト ビューが自動的に更新されて変更が反映されます。

私が達成したいのは、ListController が各アイテムに関する基本的な情報を含むリストをロードし、次に DetailController が選択されたアイテムの利用可能なすべての情報をロードすることです。クライアント側のデータ ストアがリストと詳細ビューの両方で同じである場合、ユーザーが既に読み込まれたアイテムに戻った場合、DetailController は詳細情報を再度読み込む必要はありません。もう 1 つの利点は、ユーザーが何かを変更してからリストに戻った場合に、リスト ビューが既に最新の状態になっていることです。

注: この例では編集ビューが欠落していることはわかっています。詳細ビューとリストの間のデータ バインディングを最初に機能させようとしているだけです。

4

1 に答える 1

0

フィード リーダーの ember アプリケーションでこれを正確に行います。これを行う方法は、コンテンツ プロパティを持つ detailController を用意することです。すべての詳細ビューのものを detailController にバインドします。listcontroller でアイテムを選択すると、detailcontroller の content プロパティがそのアイテムに設定されます。終わり!

于 2012-04-16T13:19:52.663 に答える