如何增加数组中的一个值?

用户14324857

我有一个数组,它有一个值quantity当我单击按钮时,quantity应该增加1个单位。此刻,我quantity将数组中所有值增加了一个。以及如何只做一个?

ts:

  addItem() {
    this.order.list.forEach(o => {
      o.quantity = o.quantity + 1;
    })
  }

的HTML:

<div *ngFor="let item of order.list">
    <span> {{item.quantity}}</span>
    <button class="my-fab" (click)="addItem()">
        <mat-icon>add</mat-icon>
    </button>
</div>
舍温格

尝试使用map代替forEach

incrementAll() {
  this.order.list = this.order.list.map(o => ({...o, quantity: o.quantity + 1}))
}

对于增加特定项目的数量,您必须传递其各自的唯一ID /名称以执行以下条件,其中按钮应位于ngFor每个项目循环

incrementItem(id: number) {
  this.order.list = this.order.list.map(o => o.id === id ? {...o, quantity: o.quantity + 1} : o);
}

这是Stackblitz演示供您参考

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章