如何在angular中使用localStorageService?

时间:2015-08-30 00:30:11

标签: javascript angularjs

LocalStorageService(https://github.com/grevory/angular-local-storage)提供的服务可以帮助我使用localstorage保存数据。 例如,

angular.module(app)
.controller("mainController",function(localStorageService){
    localStorageService.set("now",new Date());
});

我制作的服务需要一些本地数据,我将LocalStorageService注入其中。但是,我觉得使用LocalStorageService这是一种糟糕的方式。我认为每项服务应该是独立的,或者是单独的。所以,要使用LocalStorageService,我想我应该首先使用config来加载数据并将数据保存在控制器中。这是正确的吗?如何在angular中使用localStorageService?请教我!

我制作了日历服务。如果这取决于localStorageService,我不能在没有localStorageService的情况下在另一种情况下使用此服务。它的依赖性让我觉得它很糟糕。我听说模块应该尽可能独立。

(日历服务有三个属性。两个属性是数字,一个显示日历和月份,其他显示日历年。其余属性是包含日期的数组。)

1 个答案:

答案 0 :(得分:0)

您可以使用:

.factory('LocalStorageService', function(){

  return {
    setItem: function(key, obj) {
      var objToString = JSON.stringify(obj);
      window.localStorage.setItem(key, objToString);
    },
    getItem: function(key) {
      var str = window.localStorage.getItem(key);
      var stringToJSON = JSON.parse(str);
      return stringToJSON;
    }
  }
}