每个产品的 Ionic 2 增量减量

Posted

技术标签:

【中文标题】每个产品的 Ionic 2 增量减量【英文标题】:Ionic 2 increment decrement quantity for each product 【发布时间】:2018-01-29 20:30:06 【问题描述】:

所以我想为每个产品输入数量,但是每次我点击增加按钮时,其他产品也会增加,我如何增加产品的数量而不影响其他产品?另外,我想通过数量乘以价格来计算应付金额,我该怎么做?

[![enter image description here][2]][2]

【问题讨论】:

您正在对所有产品使用一个通用/单个变量“currentNumber”。为每个产品使用单独的变量“currentNumber”,例如“product.PCode” product.PPrice * currentNumber 下次请添加实际代码而不是它的图像,这样更容易将其包含在答案中:) 【参考方案1】:

在你的组件代码中,首先为productlist中的每个product初始化一个quantity属性

// After getting the list of products...
this.productlist.foreach(product =>  product.quantity = 0; );
// ...

同时更新decrementincrement 函数以接收应修改的product

increment(product: any) 
  product.quantity++;


decrement(product: any) 
  if(product.quantity > 0) 
    product.quantity--;
  

现在在视图中,您可以使用新的quantity 属性来显示数量乘以价格。另请注意,现在我们将product 发送到incrementdecrement 函数:

<ion-icon ... (click)="decrement(product)"></ion-icon>
 product.quantity * product.PPrice 
<ion-icon ... (click)="increment(product)"></ion-icon>

【讨论】:

为什么 product.quantity 的值为 NaN ?我该如何解决? 你有没有在组件代码中添加这行代码,一拿到产品列表就立马? this.productlist.foreach(product =&gt; product.quantity = 0; ); @sebaferreras 我只有一个组件来计算数量,但是当我增加和减少 quantity 时,它不会在视图中更新,除非我在 UI 中进行一些随机点击任何猜测? 能否请您看一下this answer,看看NgZone 是否有助于Angular 检测到需要更新的视图? @FernandoZamperin 嗨@sebaferreras 我看到一篇解释 NgZone 的文章,是的,你说得对,非常感谢!!【参考方案2】:
<ion-card *ngFor="let product of cart; let index=index">

<strong> ₹  item_qty *  product.price  </strong>

<ion-card>


import  Component, OnInit  from '@angular/core';
import   NavController, NavParams  from 'ionic-angular';

@Component(
selector: 'page-cart',
templateUrl: 'cart.html',
)
export class CartPage implements OnInit 

 item_qty:any;

constructor()
this.item_qty=1;

// increment item 
inc()
this.item_qty += 1;
console.log(this.item_qty + 1);


//decrements item

dec()
if(this.item_qty-1 < 1)
  this.item_qty = 1;
  console.log('item_1->' + this.item_qty)

else
  this.item_qty -= 1;
  console.log('item_2->' + this.item_qty);




【讨论】:

以上是关于每个产品的 Ionic 2 增量减量的主要内容,如果未能解决你的问题,请参考以下文章

C和JAVA中增量-减量运算符的差异[重复]

Laravel Livewire 增量减量不起作用

Java 增量/减量运算符 - 它们的行为方式,功能是啥?

ember组件增量/减量值

Java中的前后增量和减量[重复]

“增量/减量”SVM 算法 - 可以在附加数据上进行训练