当状态的另一部分在 Redux 中发生变化时更新状态的一部分

Update one part of state when another part of state get changed in Redux

例如,在购物车中,我可以在将产品添加到购物车时更新购物车状态,但我如何才能同时更新产品状态。

我已经使用 combineReducers 组合了购物车和产品减速器。

编辑:答案已贴在下方,请查收。

您可以通过组合减速器来做到这一点。使用两个不同的减速器。始终考虑使用不同的减速器来改变状态的不同部分。这将使状态更改更加干净。因此,实现此目的的一种方法是发送第一个操作以更改购物车状态。一旦成功,使用 componentWillReceiveProps 检查购物车的状态是否更新。如果是这样,请发送产品的其他操作。

终于找到答案了,我们可以按照下面的方法来做。

onClick={() => {
         addToCart(product.id, product.name, product.price);    
         updateProductList(product.id)
}}

这是es6的一次点击调用两个函数的方式,所以我们可以同时管理两个不同的状态。我在演示组件中调用了它。 我们可以创建相应的动作和减速器。

谢谢