我正在开发一个应用ionic
的应用,它应该在登录时保存一些变量,例如rootScope variables
,并在应用程序运行期间在http requests
中重用这些变量。
我的问题是,经过一段时间rootScope variables are null
,这会导致应用程序执行出错。
我以这种方式保存了变量:
$rootScope.mail = user.username;
如何解决此问题?
感谢' S
答案 0 :(得分:0)
最佳做法是在服务中创建getter和setter方法
sample.service('sampleService', function($http){
var hat = false;
this.setUserAuthenticated = function(value){
hat = value
};
this.getUserAuthenticated = function(){
return hat;
};
});
答案 1 :(得分:0)
这可能是因为以下三个原因之一:
$rootScope.mail
作为参数,并删除或覆盖此刻的数据。可以避免使用angular.copy
。无论如何,ebst的做法是避免在任何时候使用$rootScope
,而是创建一个工厂来保存和传送您的数据或/和存储机制(如localStorage
)。
答案 2 :(得分:0)
最好将变量存储在本地存储中,并从本地存储中检索数据并使用它们。
localStorage.setItem("username",user.username);
localStorage.getItem("username");