您好我在使用Ionic框架开发的混合应用程序中使用localStorage。一切正常,但最近我们注意到,如果我将我的应用程序保留在后台更长的时间,例如5-6小时,当我重新打开应用程序时,它会在localStorage中丢失其值。但是,如果我强行退出我的应用程序并重新打开它,它工作正常,然后它获取localStorage中的所有值...对我来说很奇怪,因为这只发生在IOS,Android工作绝对正常...
CODE:
function initState() {
if (userService.token().token) {
$q.all([
panelService.panelGET(),
userService.userGET(),
authenticationService.sessionGET()
]).then(function (data) {
console.log('InitState: ', data);
if (data[0]) {
checkTouchId();
} else {
next(data);
}
});
} else {
if (localStorageService.get('welcome')) {
window.location.hash = 'signin';
} else {
window.location.hash = 'welcome';
localStorageService.set('welcome', true);
}
}
}
在OnPlatformReady事件中调用initState()...
userService.token()。令牌从localStorage获取令牌密钥...
答案 0 :(得分:0)
我认为缓存的问题。使用$ionicView.enter
这样的方式来查看你的观点
$scope.$on('$ionicView.enter', function(e) {
//call your initState() function here
});
有关$ionicView.enter
Refer this QA