首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从下面的购物车项目列表中获得独立的计数值?

如何从下面的购物车项目列表中获得独立的计数值?
EN

Stack Overflow用户
提问于 2017-11-29 12:54:35
回答 1查看 1.5K关注 0票数 0

我有这样的html代码。

代码语言:javascript
复制
<div *ngFor="let item of items">
      <div class="card col-xs-12 col-sm-12 col-md-12  col-lg-12 col-xl-12">
        <div class="  col-xs-12 col-sm-12 col-md-12  col-lg-12 col-xl-12" style="display:flex">
          <div class="my-2 mx-10 col-xs-8 col-sm-8 col-md-8 col-lg-8 col-xl-8">
            <h5 class="item-heading">{{item.title}}</h5>
            <p>{{item.description}}</p>
          </div>
          <div class="my-4 col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xl-2">
            <strong>&euro;{{item.Price}} </strong>
          </div>
          <div class="mx-10 col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xl-2 p-0 m-0 d-flex " >
            <button class="Increment p-0 " (click)="Increment({{item.count}})" >+</button>
            <button class="Decrement p-0 " (click)="Decrement({{item.count}})">-</button>
            <!-- <div class="middle-part"><input  class="quantity" class=" col-6 quantity" type="number"></div> -->
            <input class=" col-5 py-3 quantity" type="number" value="{{item.count}}">
          </div>
        </div>
      </div>
    </div>

在我的ts里

代码语言:javascript
复制
import { Component, OnInit } from '@angular/core';
import { CartItemsList,cartItemsArray } from './CartItemsList';
@Component({
  selector: 'app-cart-items-component',
  templateUrl: './cart-items-component.component.html',
  styleUrls: ['./cart-items-component.component.css']
})
export class CartItemsComponentComponent implements OnInit {
  count:number=0;
  items = cartItemsArray;
  item = this.items[0];
  constructor() { }
  ngOnInit() {
  }
  Increment(item)
  {
    item.count +=1;
  }
  Decrement(item)
  {
    item.count -=1;
  }
}

现在,当我执行此操作时,所有的计数值都会增加或减少。我需要存储每个项目的个别计数值。

在cartItemsList.ts中,代码如下所示。

代码语言:javascript
复制
export class CartItemsList
{
    title:string;
    Price:number;
    description:string;
    count:number;
}
export const cartItemsArray: CartItemsList[] = [
    { title: 'Boulette Speciale', Price: 150 , description:'A product' , count:0},
    { title: 'Campagne Supreme', Price: 220 , description:'B product'  , count:0 },
    { title: 'Boulette Speciale', Price: 250 , description:'C product' , count:0 },
    { title: 'Campagne Supreme', Price: 300 , description:'D product'  , count:0 }
  ];
EN

回答 1

Stack Overflow用户

发布于 2017-11-29 13:04:04

我的建议是将一个item对象传递给函数并更新该对象的计数。

html文件中的

代码语言:javascript
复制
<button class="Increment p-0 " (click)="Increment(item)" >+</button>

中的.ts文件

代码语言:javascript
复制
Increment(item)
{
   item.count +=1;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47553394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档