angularjs中的localstorage键未定义

时间:2015-03-17 12:37:34

标签: javascript json angularjs

这是我的服务:

.factory('$localstorage', ['$window', function($window) {
  return {
    set: function(key, value) {
      $window.localStorage[key] = value;
    },
    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] || '{}');
    }
  }
}]);

我希望将我的json存储到其中,所以我在控制器中确实喜欢这个:

$localstorage.set(JSON.stringify($scope.data));

我使用此扩展名https://chrome.google.com/webstore/detail/storage-area-explorer/ocfjjjjhkpapocigimmppepjgfdecjkb进行检查,我发现我的值未定义: enter image description here

..我的json确实通过了,但它进入了关键,而不是价值。为什么呢?

1 个答案:

答案 0 :(得分:2)

看起来set有一个键和一个值,你只是设置第一个参数是一个键吗?

$localstorage.set('yourKey', JSON.stringify($scope.data));