AngularJS-Array到cookiestore

时间:2014-03-17 12:16:47

标签: javascript arrays angularjs cookiestore

在cookiestore中存储数组时遇到问题。 尝试将数组添加到cookiestore中,以便以后可以访问它。 JS

angular.module('myApp', ['ngCookies']);
function CartForm($scope, $cookieStore) {
$scope.invoice.items = $cookieStore.get('items');
$scope.addItem = function() {
$scope.invoice.items.push({
    qty: 1,
    description: '',
    cost: 0
 });
$scope.invoice.items = $cookieStore.put('items');
},

 $scope.removeItem = function(index) {
 $scope.invoice.items.splice(index, 1);
 $scope.invoice.items = $cookieStore.put('items');
},

$scope.total = function() {
 var total = 0;
 angular.forEach($scope.invoice.items, function(item) {
     total += item.qty * item.cost;
 })

 return total;
 }
   }

1 个答案:

答案 0 :(得分:0)

将数据存储在cookie中:put(key,value);

angular.module('myApp', ['ngCookies']);

function CartForm($scope, $cookieStore) {

$scope.invoice.items = $cookieStore.get('items') || [];

$scope.addItem = function() {
    $scope.invoice.items.push({
        qty: 1,
        description: '',
        cost: 0
    });
    $cookieStore.put('items', $scope.invoice.items);
};

$scope.removeItem = function(index) {
    $scope.invoice.items.splice(index, 1);
    $cookieStore.put('items', $scope.invoice.items);
};

$scope.total = function() {
    var total = 0;
    angular.forEach($scope.invoice.items, function(item) {
        total += item.qty * item.cost;
    });
    return total;
};
}