【发布时间】:2021-09-03 22:47:44
【问题描述】:
我希望有人帮助我了解更改 item 数组如何更改以下函数中的 orderList 数组?
下面的函数用于增加和减少订单的数量 using "+" and "-" buttons,如果action是“+”,则数量加1,否则数量减1
const [orderItems, setOrderItems] = React.useState([])
const editOrder = (action, menuId, price) => {
let orderList = orderItems.slice()
let item = orderList.filter(a => a.menuId == menuId)
if(action == "+"){
if(item.length > 0)
let newQty = item[0].qty + 1
item[0].qty = newQty
item[0].total = item[0] * price
} else {
const newItem = {
menuId: menuId,
qty: 1,
price: price,
total: price
}
orderList.push(newItem)
}
setOrderItems(orderList)
} else {
if(item.length > 0) {
if (item[0].qty > 0){
let newQty = item[0].qty - 1
item[0].qty = newQty
item[0].total = newQty * price
}
}
setOrderItems(orderList)
}
}
【问题讨论】:
标签: javascript arrays reactjs react-native react-hooks