0

私は数日間 AngularJS をいじっていますが、いくつかの電球が点灯し始めていますが、ng-repeat の $scope 変数のように localStorage 変数を使用できない理由がわかりません:

何が機能していますか:

JS

$scope.items = [
  {id: 1, title: 'a', desc: '1', quantity: 1, price: 14.50},
  {id: 2, title: 'b', desc: '2', quantity: 1, price: 25.95},
  {id: 3, title: 'c', desc: '3', quantity: 1, price: 22.50}
];

HTML

<div ng-repeat="item in items">
<span>{{item.title}}</span>
<span>{{item.price | currency:"&euro;"}}</span>
<span>{{item.price * item.quantity | currency:"&euro;"}}</span>
</div>

今のところ問題ありません。ただし、同じ情報を $localStorage.items 変数に保存すると、ng-repeat フィールドに正しく解析されなくなります。特定の変数を返す他の関数は、関数として呼び出しているときに機能しています ({{example()}})

だから私がやろうとしていること:

JS

$scope.addToCart = function(index, title, desc, price) {
    var found = false;
    angular.forEach($localStorage.items, function(items) {
        if (items.id  === index) {
            items.quantity++;
            found = true;
        }
    });
    if (!found) {
        $localStorage.items.push(angular.extend({id: index, title: title, quantity: 1, price: price}, index));

    }
};

HTML

<div ng-repeat="item in $localStorage.items">
<span>{{item.title}}</span>
<span>{{item.price | currency:"&euro;"}}</span>
<span>{{item.price * item.quantity | currency:"&euro;"}}</span>
</div>

ただし、これは機能していません。私は何を間違っていますか?

4

0 に答える 0