2015-12-15 112 views
3

如何將angularJS變量數據存儲到本地臨時存儲中以供進一步使用,就像服務器端的會話一樣。如何將angularJS數據存儲到本地存儲中,就像會話一樣?

的AngularJS源代碼

var pApp = angular.module('ProfileIndex', []); 
pApp.controller('ProfileIndexCtrl', function($scope, $http, $cacheFactory) { 

    $scope.data = "MVVM"; 

}); 

如何在本地存儲存放MVVM價值?以及如何從本地存儲中檢索值?

回答

1

只需使用web storage API

// set "data" to "MVVM" 
$window.localStorage.setItem('data', 'MVVM'); 

// get "data" 
$window.localStorage.getItem('data'); 
1

使用工廠:不要使用web storage api

.factory('$localstorage', ['$window', function($window) { 
          return { 
          set: function(key, value) { 
          $window.localStorage[key] = value; 
          }, 
          remove: function(key) { 
          $window.localStorage.removeItem(key); 
          }, 
          get: function(key, defaultValue) { 
          return $window.localStorage[key] || defaultValue; 
          }, 
          setObject: function(key, value) { 
          $window.localStorage[key] = JSON.stringify(value); 
          }, 
          getObject: function(key) { 
          return JSON.parse($window.localStorage[key] || '{}'); 
          }, 
          clearAll: function() { 
          $window.localStorage.clear(); 
          } 
          } 
          }]) 
0

,不如你用角存儲ngStorage

使用網絡存儲和角度存儲時有所不同,尤其是當您想將對象存儲到存儲中時。

對於網絡存儲,在將數據保存到Web存儲之前,您需要序列化對象,然後您需要反序列化以獲取數據。

如:

store- localStorage.setItem('saveData', JSON.stringify(myObj));

GET-JSON.parse(localStorage.getItem('saveData'));

你可以簡單地存儲你的數據ngStorage角存儲。

如:

store- $localStorage.obj = myObj;

例子中的物體:

var myObj = {'firstname': 'john', 'secondname': 'cena'}

ngStorage你可以看到這個鏈接的詳細信息ngStorage

相關問題