$localStorage не добавляет новые элементы со старыми элементами

Я хочу добавить новые элементы в $localStorage плюс старые элементы. Но здесь в моем коде $localStorage теряет все предыдущие элементы. Мой код выглядит следующим образом,

        $scope.cart = [];   

        $scope.cart = productService.getSharedProduct();        

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

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

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]);
    }
}
Другие вопросы по тегам