redux已经更新但视图却没有更新?
源代码
addGood(state, { good }) {
let targetIndex = state.goods.findIndex(item => item.id === good.id)
console.log("addGood -> targetIndex", targetIndex)
if(targetIndex > -1){
state.goods[targetIndex].num += good.num
}else{
state.goods.push(good)
}
let goodsTotalNum = 0
state.goods.forEach(i => {
goodsTotalNum += i.num
})
state.goodsTotalNum = goodsTotalNum
console.log('addGood -> state', state)
return state
}
正确写法:
addGood(state, { good }) {
let stateCopy = {...state}
let targetIndex = stateCopy.goods.findIndex(item => item.id === good.id)
console.log("addGood -> targetIndex", targetIndex)
if(targetIndex > -1){
stateCopy.goods[targetIndex].num += good.num
}else{
stateCopy.goods.push(good)
}
let goodsTotalNum = 0
stateCopy.goods.forEach(i => {
goodsTotalNum += i.num
})
stateCopy.goodsTotalNum = goodsTotalNum
console.log("addGood -> stateCopy", stateCopy)
console.log('addGood -> state', state)
return stateCopy
版权声明:本文为weixin_36222440原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。