2012-04-15 51 views
2

我正在構建一個需要三個組件的EmberJS應用程序。項目列表,每個項目的詳細視圖以及每個項目的編輯視圖。我還沒有找到任何好的解釋或例子來說明如何在這種特殊情況下管理數據。EmberJS應用程序中的列表+細節+編輯視圖的數據處理

你可以找到的東西我有現在這個要點簡化和清理例如:https://gist.github.com/2390740

我想要什麼,以避免被具有數據的兩個副本,但我唯一的出路已經能夠將數據轉化爲詳細的視圖是通過製作它的副本,這遠非理想。

是否有某種方法從DetailController引用ListController中的數組中的項目?這樣,當詳細視圖中的項目更新時,列表視圖會隨着更改而自動更新。

我想實現的是ListController加載一個列表,其中包含有關每個項目的基本信息,然後DetailController加載所選項目的所有可用信息。如果客戶端數據存儲對於列表和詳細視圖都可以是相同的,那麼如果用戶返回到已經被加載的項目,那麼DetailController將不必再次加載詳細信息。另一個好處是,如果用戶更改了任何內容並返回到列表,則列表視圖已經是最新的。

注:我知道在這個例子中編輯視圖丟失,我只是試圖讓詳細視圖和列表之間的數據綁定工作。

+0

我發現了一個稍微好一點的方法,通過將currentItem更改爲一個計算屬性並僅將索引複製到當前項目。這更多的是我試圖達到的目標,但我會留下一個更好的方法來解決這個問題。 – 2012-04-16 09:10:28

回答

0

我這樣做是在我的feed reader ember application。 做到這一點的方法是具有一個具有內容屬性的detailController。 將所有的細節視圖的東西綁定到detailController。在列表控制器中選擇一個項目應該將detailcontroller的content屬性設置爲該項目。完成!

相關問題