2017-10-05 122 views
1

我是Angular2中的新成員。如果我們使用ngrx/store來管理應用程序的狀態,那麼Angular提供了用於管理像ngrx/store,角度服務等應用程序狀態的各種選項,然後我們需要一個外部庫,但是在角度服務不需要的情況下。應該用什麼來管理應用程序的狀態?每種方法有哪些優缺點?有沒有角度社區提供的建議?角2應用的狀態管理

+0

標記,這主要是基於意見的 –

回答

0

您不需要ngrx/store來實現redux-store。你可以自己實現一個。有多個教程在線顯示如何以輕量級的方式做到這一點。但是ngrx/store是由谷歌的人開發和支持的,所以它是一個您可以信賴的成熟框架,它還提供了一些簡潔的功能,例如異步事件和開發中的不變性檢查的效果。

主要問題是您是否應該使用一般的REDX模式/存儲。這非常依賴於您的應用程序架構。對於較小的應用程序來說,這可能太多了,特別是如果你沒有清晰的用戶故事,而且事情可能會迅速改變。但是如果你有一個大的SPA,一般建議使用一箇中央數據流存儲。終極版。它可以確保應用程序中的數據流是單向的,並且在應用程序的重要部分沒有循環依賴關係,因爲應用程序變得越來越複雜,將來會出現奇怪的錯誤。

即使在SPA中,您也可以使用不屬於商店的UI庫。啓用或禁用按鈕原型只是其組件應該注意的事情。但是應用程序模塊中使用的相同按鈕應該表示提供或不提供的特定功能,並且應該以redux表示。

我強烈建議你看一下ngrx-store示例應用程序,並親自看到好處和缺點。