我正在創建一個ExtJS 4單頁Web應用程序,並且遇到了一些問題,這些問題決定了定義和維護我的應用程序狀態的MVC優先方式。我知道ExtJS 4的商店的全球性,我喜歡它們的想法,但是它們的實用性在幾個方面都受到質疑。ExtJS 4 Web應用程序狀態管理
例如,我有一些模型可能需要在某些時候擴展到數千個,並且將所有這些加載到客戶端瀏覽器的內存中並不意味着我是最好的想法。試圖做到這一點我會遇到很大的性能問題。
此外,除了在選項卡面板中相同選項卡上的多個網格之外,我的應用程序還將具有可同時查看多個窗口的窗口。這些視圖應該根據其屬性顯示模型的子集。如果這些視圖與同一個全球商店及其模型相關聯,則它們將受到諸如過濾器之類的操作的影響,並且將被有效地限制爲顯示相同的一組模型,這不是我想要實現的。
所以我的實際問題是我該如何去處理這種情況?我已經閱讀了StackOverflow中的一個類似問題,它要求視圖保存它們自己的商店實例,而不是使用全局實例,但我不確定這是否正確適合MVC模式。我目前的想法是有一個控制器管理狀態,並持有商店的各種實例,所以他們不直接綁定到視圖,但他們仍然可以訪問事件調用和其他控制器。這是一個很好的解決方案還是我錯過了什麼?