3

API呼び出しからのすべてのデータをデバイスのローカルストレージに配置していることに気付きました.物をローカルストレージに配置するか、サービスに配置するかが重要かどうかわかりません。Angularjs サービスを使用する場合と比較して、デバイスからローカル ストレージを使用する必要があるのはいつですか?

4

3 に答える 3

7

あなたは概念と少し混ざっています。angularjs サービスに関して言えば、ページが更新されない限り、ページを更新するかブラウザのタブを閉じるとすぐにデータが失われます。

Angularjs サービスは、ブラウザ タブの存続期間に限定された、宣言する単なる変数と考えてください。したがって、次のセッションに持ち越されることを意図していない一時的なフラグと値を保存するために使用できます。

一方、localStorageに関しては、データベースのようなものと考えてください。localStorage に保存したものはすべてブラウザー内に保存され、複数のタブやアプリのセッションで利用できます [ユーザーがブラウザー データを消去するまで]

Ionic と Cordova を使用しているため、localStorage を使用してユーザー名やパスワードなどを保存し、ユーザーが次にアプリを開いたときにそれらを使用できるようにする必要があります。アプリを閉じることは、ブラウザのタブを閉じることと同じであることに注意してください。

一方、ユーザーがアプリにアクセスするたびに更新し続ける特定のデータがある場合は、サービスを使用してそれらを保存し、アプリが閉じられるとすぐに削除されるようにすることができます。


比喩的に言えば、localStorage --> セカンダリの不揮発性ストレージ、angularjs サービス --> プライマリの揮発性ストレージです。

于 2015-03-04T05:09:29.870 に答える
0

ローカル ストレージに格納されたデータは永続的です。そのため、Web アプリをリロードすると、ローカル ストレージ内のデータはそこまでです。通常、ローカル ストレージは 5MB に制限されています。これを見る

サービスはメモリ構造内にあります。そのため、何かをサービスに配置すると、それはブラウザのメモリ内にあり、ブラウザを更新すると失われます。

したがって、必要なものによって異なります。

于 2015-03-04T03:46:03.137 に答える
0

この localstorage プラグインをアプリに使用できます。https://github.com/grevory/angular-local-storage

于 2016-11-08T11:32:48.513 に答える