Javascript 关闭并重新运行应用程序后,本地存储中的数据不会持久
我正在使用本地存储在我的游戏中只保存一个数字(最佳分数),在玩游戏时效果很好。我可以玩多个回合,它正确地显示最高分数,但一旦我完全关闭应用程序并重新打开,最佳分数就消失了 控制器:Javascript 关闭并重新运行应用程序后,本地存储中的数据不会持久,javascript,html,cordova,ionic-framework,Javascript,Html,Cordova,Ionic Framework,我正在使用本地存储在我的游戏中只保存一个数字(最佳分数),在玩游戏时效果很好。我可以玩多个回合,它正确地显示最高分数,但一旦我完全关闭应用程序并重新打开,最佳分数就消失了 控制器: $scope.$on("$ionicView.beforeEnter", function () { if(window.localStorage.getItem("topscore")<$rootScope.totalscore){ window.localStorage.se
$scope.$on("$ionicView.beforeEnter", function () {
if(window.localStorage.getItem("topscore")<$rootScope.totalscore){
window.localStorage.setItem("topscore", $rootScope.totalscore);
window.localStorage.setItem("password", "yessir");
$scope.bestscore=window.localStorage.getItem("topscore");
}
});
使用ionic框架并在实际的iPhone6设备上进行测试。感谢您的帮助此位可能不在
if
子句的范围内,以便在启动时始终加载该值。我还添加了一个类型转换,因为localStorage
只处理字符串,如果未设置,则为默认值
$scope.bestscore = parseInt(localStorage.getItem("topscore") || "0", 10);
如果在应用程序启动时调用了该函数,那么您的根作用域上可能还没有totalScore值。尽管如此,您似乎还是继续在“topscore”键下将该值设置到本地存储中 基本上,每当应用程序启动时,您都要在键上进行书写。在主题中,“日期”应该是“数据”吗?
$scope.bestscore = parseInt(localStorage.getItem("topscore") || "0", 10);