Неправильная мутация вложенного объекта, uom_id получает [null, null], и оно всегда должно иметь значение.
case ADD_TO_CART:
console.log('ADD TO CART', {...(JSON.parse(JSON.stringify(payload.product)))})
const ex = state.shoppingCart[`c_${payload.product.default_code}`] ? {
...(JSON.parse(JSON.stringify(state.shoppingCart[`c_${payload.product.default_code}`]))),
quantity: state.shoppingCart[`c_${payload.product.default_code}`].quantity + 1,
uom_id: [ payload.product.uom_id[0], payload.product.uom_id[1]],
section: payload.section
} : {
...(JSON.parse(JSON.stringify(payload.product))),
section: payload.section,
uom_id: [ payload.product.uom_id[0], payload.product.uom_id[1]] ,
quantity: 1
};
console.log('THIS IS THE EX, ', ex);
return {
...state,
shoppingCart: {
...state.shoppingCart,
[`c_${payload.product.default_code}`]: state.shoppingCart[`c_${payload.product.default_code}`] ? {
...(JSON.parse(JSON.stringify(state.shoppingCart[`c_${payload.product.default_code}`]))),
quantity: state.shoppingCart[`c_${payload.product.default_code}`].quantity + 1,
uom_id: [ payload.product.uom_id[0], payload.product.uom_id[1]],
section: payload.section
} : {
...(JSON.parse(JSON.stringify(payload.product))),
section: payload.section,
uom_id: [ payload.product.uom_id[0], payload.product.uom_id[1]],
quantity: 1
},
}
}
Я ожидаю, что объект будет скопирован с вложенными уровнями.
ct На изображении вы можете увидеть первый объект в качестве полезной нагрузки и после результата ex