0

新しいアイテムを $localStorage と古いアイテムに追加したいと考えています。しかし、ここで私のコード $localStorage では、以前のすべてのアイテムが失われています。私のコードは次のとおりです。

        $scope.cart = [];   

        $scope.cart = productService.getSharedProduct();        

       if ($scope.cart != 0) {
           
           $localStorage.items = $scope.cart;
       }

       else {
           $scope.cart = $localStorage.items;
       }

4

1 に答える 1

1

はい、にアイテムを追加しているのではなく、$localStorage.items毎回新しい値を割り当てているため、最後に追加された値が失われたためです。毎回再初期化しているため、最後に追加された値が失われます。

あなたはこのようなことをすべきです

if ($scope.cart != 0) {

    // instead of this            
    //$localStorage.items = $scope.cart; 

    // you should do this
    for(var i=0; i<$scope.cart.length; i++)
    {
        $localStorage.items.push($scope.cart[i]);
    }
}
于 2016-05-29T11:34:18.393 に答える