2017-02-27 109 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));