繁体   English   中英

从反应中的一组对象计算发票总额和发票数量

[英]calculating the invoice total and invoice quantity from an array of objects in react

我在反应中有在线购物应用程序。我有名为invItems的发票数组和该数组中名为items的产品。 我想计算invItems数组中所有项目的价格*数量。 此外,我想计算发票中所有 object(项目)的总量。 代码如下:

useEffect(()=>{
if(invItems.length>0){
  var invtotal=0.0;
  var total=invItems.reduce((invTotal,x)=>(invTotal+=x.total));
  var sum=0;
   sum=invItems.reduce((sum,x)=>(sum+=x.qty));
  console.log("result:",total,sum );
}
  
},[invItems])
console.log("invItems:",invItems);

每个项目是 object 如下:

const newItem={
    OId:'',
    productId: '',
    productName: '',
   productCode: '',
    qty:1,   
    price: 0.0,
    total:0.0,
}

结果不正确或形式不正确,请查看屏幕截图中的控制台。 结果控制台截图

invItems 屏幕截图

我正在分享,以便它可能对任何人都有帮助。 以下更改解决了我的问题。它计算所有invItems的总数和数量。

useEffect(()=>{
if(invItems.length>0){
  var invtotal=0.0;  //(a,v)=>a+v.credit,0
  var total=invItems.reduce((a,x)=>a+x.total,0);
  var sum=0;
   sum=invItems.reduce((a,x)=>a+x.qty,0);
  console.log("result:",total,sum );
}
  //setVal({...val,total:total,qty:qty})
},[invItems])

此致

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM