2016-02-14 102 views
0

在學習Angular 2時,我看到了多個應用程序數據存儲在服務中的例子。在Angular 2.0應用程序中存儲應用程序數據的正確方法是什麼?

例如:在待辦事項列表應用程序中,您會發現一個「待辦事項」服務,該服務將定義可供該服務的任何使用者訪問的「待辦事項條目」列表。

我的問題是:有沒有更好的定義應用程序數據的方法?它應該與服務分開嗎?

在我的特殊情況下,我想利用localstorage來保存一堆應用程序數據。最終,我可能會重構這個來保存和加載數據庫中的數據。對於我來說,創建某種可供其他服務用於保存和檢索數據的「數據存儲」服務,還是數據應始終與使用它的服務共存?人們如何選擇在上面的「todo」示例中構造這個結構?

回答

1

LocalStorage僅用於改善用戶體驗(對速度進行緩存或進行類似緩存),但它不是保存不會丟失數據的地方。對於這種情況,您需要一臺服務器,您可以將數據發送到服務器,並將數據存儲在數據庫中。 https://www.firebase.com/可能會方便一開始。

從提取或保留這些數據的服務中分離數據是一個好主意。如果您使用Angulars Http服務來從服務器獲取數據並將其持久保存到服務器,則儘管這可能已經足夠分離。當你的應用程序變得更復雜時,你可能需要更多的抽象,但是這需要一個更具體的例子來說明你實際嘗試完成的事情。

+0

我完全明白 - 我只是在學習Angular 2的繩索時使用localstorage作爲便利。我正在製作一個小遊戲,將玩家數據和一些遊戲狀態信息保存到本地存儲中,所以如果數據不會持續存在就沒有什麼大不了的 - 這只是一個幫助我學習Angular 2的小實驗。 – Novark

+0

當然,使用它就好了。那麼這是否回答你的問題? –

+0

您能否簡要描述一下如何使用示例(例如我的原始文章中的todo-list)組織數據和服務?我認爲一個具體的例子在這裏真的很有用。 – Novark

相關問題