2016-12-05 12 views
0

Wenn ich einen Artikel zu meinem Warenkorb hinzufüge, möchte ich dem Benutzer erleichtern zu sehen, dass er diesen Artikel zu seinem Warenkorb hinzugefügt hat, wenn er den Produktkatalog betrachtet. Derzeit, wenn ich den Artikel zum Warenkorb hinzufügen, erscheint neben jedem Produkt die Nachricht added to basket. Ich möchte, dass dies neben dem gerade hinzugefügten Produkt angezeigt wird.Hinzufügen von Nachrichten neben dem Produkt beim Hinzufügen zum Einkaufswagen

Wie würde ich das tun?

Dies ist der Code, den ich bisher bekommen habe, welche Elemente in den Korb ergänzt:

$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> 

Antwort

1

Bitte versuchen Sie folgenden Code

$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> 

Hope this helfen Ihnen

0

Die Eigenschaft von Artikel nicht von Klasse bestehen hat:

$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> 
Verwandte Themen