2016-12-05 19 views
0

商品を自分のバスケットに追加すると、商品カタログを表示しているときにその商品をバスケットに追加したことをユーザーが容易に確認できます。現在、アイテムをバスケットに追加すると、すべての商品の横にメッセージadded to basketが表示されます。私はこれを追加したばかりの製品の横にこれを表示します。バスケットに追加するときに商品の横にメッセージを追加する

どうすればよいですか?

これは、バスケットに項目を追加し、私がこれまで持っているコードです:

$scope.addToBasket = function(item){ 
    $scope.basket.push(item); 
    $scope.addedToBasket = 'added to basket'; 
} 


<div ng-repeat="item in items"> 
    <div ng-click="addToBasket(item)"> 
    {{item.name}} &nbsp; {{item.price}} {{addedToBasket}} 
    </div> 
</div> 

答えて

1

コードを、次の試してみてください

$scope.addToBasket = function (item) { 
    $scope.basket.push(item); 
    angular.forEach($scope.items, function (objItem) { 
     objItem.addedToBasket = angular.equals(objItem, item) ? 'added to basket' : ''; 
    }); 
} 

<div ng-repeat="item in items"> 
    <div ng-click="addToBasket(item)"> 
    {{item.name}} &nbsp; {{item.price}} {{item.addedToBasket}} 
    </div> 
</div> 

が、これはあなた

役立つことを願っています
0

プロパティがないクラスでアイテムでは存在しています

$scope.addToBasket = function(item){ 
$scope.basket.push(item); 
item.customMessage="Added to basket"; 
} 

<div ng-repeat="item in items"> 
<div ng-click="addToBasket(item)"> 
    {{item.name}} &nbsp; {{item.price}} {{item.customMessage}} 
</div> 
</div> 
関連する問題