2017-02-27 9 views
0

私はHTML5とAngularJSを使ってウェブサイトを開発していますが、コントローラの中で私はデータベースにアクセスし、配列$scope.arrayを初期化します。angularjs - どのように配列をsessionStorageに保存しますか?

その後、私はセッションで初期化された配列保存:その配列が存在する場合のsessionStorageに

sessionStorage.array = $scope.array; 

を、私はのsessionStorageのコピーをロードすると、空の配列を定義していません。

私はそうのようにそれを行う:$scope.array私はng-repeatを経由してHTMLに提示配列されるように

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

しかし、私の問題は、最初にリフレッシュした後、$scope.arrayオブジェクトが、私はそうセッションで配列を保存することができますどのように空の配列(リフレッシュする前に、それはデータベースからの値で初期化された)

になることですそれは 'else'ブランチには行きませんか?

答えて

3

私は

sessionStorage.setItem("array",JSON.stringify($scope.array)); 
...あなたは

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

をしたいと仮定し

関連する問題