2017-02-27 78 views
0

我正在开发一个使用HTML5和AngularJS的网站,并且在控制器内部我访问数据库并初始化一个数组$scope.arrayangularjs - 如何在sessionStorage中存储数组?

后来我初始化数组保存在session:

sessionStorage.array = $scope.array; 

如果sessionStorage的存在阵列,我要加载的sessionStorage的副本,而不是定义一个空数组。

我这样做,像这样:

if(sessionStorage.array) 
     $scope.array = sessionStorage.array; 
else 
     $scope.array = []; 

这样$scope.array是我通过ng-repeat呈现给HTML数组。

但我的问题是,清爽的第一次之后,$scope.array对象成为一个空数组

我怎样才能在阵列保存在会话(清爽之前,它与从数据库中值初始化)等等它不会到达“其他”分支?

回答

3

我假设你想

var arr = sessionStorage.getItem("array"); 
$scope.array = arr?JSON.parse(arr):[]; 

...

sessionStorage.setItem("array",JSON.stringify($scope.array));