179

現在、サービスを使用してアクションを実行しています。つまり、サーバーからデータを取得し、サーバー自体にデータを保存しています。

これの代わりに、データをサーバーに保存するのではなく、ローカル ストレージに配置したいと考えています。どうすればいいですか?

4

10 に答える 10

124

これは、ローカル ストレージに保存および取得する私のコードの一部です。ブロードキャスト イベントを使用して、モデルの値を保存および復元します。

app.factory('userService', ['$rootScope', function ($rootScope) {

    var service = {

        model: {
            name: '',
            email: ''
        },

        SaveState: function () {
            sessionStorage.userService = angular.toJson(service.model);
        },

        RestoreState: function () {
            service.model = angular.fromJson(sessionStorage.userService);
        }
    }

    $rootScope.$on("savestate", service.SaveState);
    $rootScope.$on("restorestate", service.RestoreState);

    return service;
}]);
于 2013-08-15T13:53:53.293 に答える
56

ローカル ストレージの場合は、以下の URL を参照するためのモジュールがあります。

https://github.com/grevory/angular-local-storage

HTML5ローカルストレージとangularJsのその他のリンク

http://www.amitavroy.com/justread/content/articles/html5-local-storage-with-angular-js/

于 2013-08-15T06:06:53.990 に答える
50

ngStorageAngularJS ローカル ストレージのすべてのニーズに使用できます。これは Angular JS フレームワークのネイティブ部分ではないことに注意してください。

ngStorage 2 つのサービスを含み$localStorage$sessionStorage

angular.module('app', [
   'ngStorage'
]).controller('Ctrl', function(
    $scope,
    $localStorage,
    $sessionStorage
){});

デモを確認する

于 2015-03-04T11:33:19.447 に答える
4

よりも多くのアクティビティを持つ代替モジュールがもう 1 つあります。ngStorage

角度ローカル ストレージ:

https://github.com/grevory/angular-local-storage

于 2015-04-17T14:07:11.480 に答える
2

Angular - ローカル ストレージにデータを保存するには、次の手順に従います。

  1. フォルダーに「ngStorage.js」を追加します。
  2. angular.module に「ngStorage」を挿入します

        eg: angular.module("app", [ 'ngStorage']);
    
  3. $localStorageapp.controller 関数に追加します

$localStorage4.コントローラー内で使用できます

Eg: $localstorage.login= true;

上記はブラウザアプリケーションにローカルストレージを保存します

于 2019-05-09T10:35:51.393 に答える
2

localStorage目的でご利用いただけます。

手順:

  1. ファイルに ngStorage.min.js を追加します
  2. モジュールに ngStorage 依存関係を追加します
  3. コントローラーに $localStorage モジュールを追加します
  4. $localStorage.key = 値を使用
于 2016-05-12T04:14:43.727 に答える
2

(さらに別の) angular html5 ストレージ サービスを作成しました。によって可能になった自動更新を維持したかったのngStorageですが、(少なくとも私にとっては) ダイジェスト サイクルをより予測可能/直感的にし、状態のリロードが必要なときに処理するイベントを追加し、タブ間の共有セッション ストレージも追加したかったのです。API をモデル化し、$resourceと呼びましたangular-stored-object。次のように使用できます。

  angular
    .module('auth', ['yaacovCR.storedObject']);

  angular
    .module('auth')
    .factory('session', session);

  function session(ycr$StoredObject) {
    return new ycr$StoredObject('session');
  }

APIはこちら.

レポはこちら

それが誰かに役立つことを願っています!

于 2016-03-28T18:08:50.717 に答える
1

データが最終的に期限切れになることを許可したり、保存するレコード数に制限を設定したりする場合など、ニーズに応じて、https://github.com/jmdobry/angular-cacheを参照して、キャッシュは、メモリ、localStorage、または sessionStorage にあります。

于 2015-08-26T16:05:24.183 に答える