Служба локального хранения AngularJS неправильный возврат

0

У меня есть эта услуга в моем приложении. Служба для установки и загрузки пользователя в localstorage. Но функция getUser возвращала функцию JSON.parse не мой объект.

Кто-нибудь знает, как решить эту проблему?

Код находится здесь:

 .service('UserService', function() {
  // For the purpose of this example I will store user data on ionic local storage but you should save it on a database
  var setUser = function(user_data) {
    window.localStorage.extract = JSON.stringify(user_data);
  };

  var getUser = function(){
      console.log(JSON.parse(window.localStorage.user || '{}'));
    return JSON.parse(window.localStorage.user || '{}');
  };

  var clearUser = function(){   
      delete window.localStorage.user;    
  };

  return {
    getUser: getUser,
    setUser: setUser,
    clearUser: clearUser
  };
})

благодаря

Теги:
local-storage

1 ответ

0

Я использую методы localStorage.get/set item, как показано ниже. Таким образом, ваш сервис будет выглядеть так:

.service('UserService', function() {

  var getUser = function(){
    return JSON.parse(window.localStorage.getItem('user'));
  };


  var setUser = function(user){
    JSON.stringify(window.localStorage.setItem('user', user));
  };

  return {
    getUser: getUser,
    setUser: setUser
  };
})
  • 0
    У меня был такой же результат. Объект, возвращаемый функцией getUser, не является элементом localstore, но является прототипом функции JSON.parse.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню