Здрасте, такая проблемка, кликаю на
<button class="btn btn-warning" ng-click="productController.counter(1);">+</button>
и количество суммируеться во всех продуктах, а надо только в том по котором клинул, спасибо.
(удалил некоторый html чтоб укоротить)
<div class="container" ng-controller="ProductController as productController">
<div class="row">
<div class="col-md-6" ng-repeat="x in productController.productDetails">
<product-card></product-card>
</div>
</div>
</div>
ProductCard:
<div class="product-card">
<div class="row product-content">
<div class="col-sm-9 col-xs-8">
<div class="row">
<div class="col-sm-8 col-xs-12">
<h2 class="product-title">{{x.name}}</h2>
<p class="product-description"></p>
<ul>
<li class="product-description"><i class="fa fa-check"></i> {{x.options.opt1}}</li>
</ul>
</div>
<div class="col-sm-4 col-xs-12">
<div class="row">
<div class="col-sm-12 col-xs-6">
<div class="input-group count-selector">
<div class="counter-value"> {{productController.count}} <span></span></div>
<span class="input-group-btn"><button class="btn btn-warning" ng-click="productController.counter(1);">+</button></span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
var order = angular.module('order', []);
order.directive('productCard', function(){
return {
restrict: 'E',
templateUrl: 'product-card.html'
};
});
order.controller('ProductController', function (ProductService) {
this.productDetails = ProductService.getDetails();
this.count = 1;
this.counter = function(x){
this.count += x;
}
});
order.service('ProductService', function () {
var productDetails = [
{
name : 'Пиджак',
price: '50',
options: {
opt1: 'Химчистка',
opt2: 'Отпаривание'
}
},
{
name : 'Пиджак',
price: '80',
options: {
opt1: 'Химчистка',
opt2: 'Отпаривание'
}
}
];
this.getDetails = function () {
return productDetails;
}
});