刷新浏览器时 sessionStorage 消失了 - Javascript
sessionStorage is gone when browser is refreshed - Javascript
我试图在 sessionStorage 中保留一些数据,但如果我刷新页面或离开 link 然后返回,sessionStorage 将不再存在。
我是 sessionStorage 的新手,很抱歉,如果这是一个明显的修复。
基本上我将一个数组存储到 sessionStorage 中。
$scope.addPlant = function(plant) {
for (i = 0; i < $scope.userPlantList.length; i++) {
if ($scope.userPlantList[i] === plant) {
alert("You have already added this plant");
return;
}
}
$scope.userPlantList.push($scope.currentPlant);
sessionStorage.setItem("Plants",JSON.stringify($scope.userPlantList));
};
然后当我想查看所有存储的内容时
$scope.retreiveList = function() {
var retrieved = sessionStorage.getItem("Plants");
$scope.userPlantList = JSON.parse(retrieved);
}
当我根本不刷新 page/app 时,这工作正常。
问题:如何让我的 sessionStorage 在 refresh/immediate 重新访问期间持续?
通过查看开发者工具检查数据是否真的消失了
如果您使用 chrome:F12 -> 资源选项卡 -> 会话存储。
sessionStorage 与浏览器选项卡一起使用。每当您关闭选项卡时,会话存储数据都会被清除。
如果您想要跨选项卡共享的内容,请查找 localStorage。
我建议使用来自 angular
的 $window
提供商
// set
$window.sessionStorage.setItem('Plants', angular.toJson($scope.userPlantList));
// get
$scope.userPlantList = angular.fromJson($window.sessionStorage.getItem('Plants')) || [];
我试图在 sessionStorage 中保留一些数据,但如果我刷新页面或离开 link 然后返回,sessionStorage 将不再存在。
我是 sessionStorage 的新手,很抱歉,如果这是一个明显的修复。
基本上我将一个数组存储到 sessionStorage 中。
$scope.addPlant = function(plant) {
for (i = 0; i < $scope.userPlantList.length; i++) {
if ($scope.userPlantList[i] === plant) {
alert("You have already added this plant");
return;
}
}
$scope.userPlantList.push($scope.currentPlant);
sessionStorage.setItem("Plants",JSON.stringify($scope.userPlantList));
};
然后当我想查看所有存储的内容时
$scope.retreiveList = function() {
var retrieved = sessionStorage.getItem("Plants");
$scope.userPlantList = JSON.parse(retrieved);
}
当我根本不刷新 page/app 时,这工作正常。
问题:如何让我的 sessionStorage 在 refresh/immediate 重新访问期间持续?
通过查看开发者工具检查数据是否真的消失了
如果您使用 chrome:F12 -> 资源选项卡 -> 会话存储。
sessionStorage 与浏览器选项卡一起使用。每当您关闭选项卡时,会话存储数据都会被清除。
如果您想要跨选项卡共享的内容,请查找 localStorage。
我建议使用来自 angular
的$window
提供商
// set
$window.sessionStorage.setItem('Plants', angular.toJson($scope.userPlantList));
// get
$scope.userPlantList = angular.fromJson($window.sessionStorage.getItem('Plants')) || [];