我有一个Redux商店,包含9个case语句的reducer。其中六个案例涉及在状态数组中填充数组,处理所述数组的排序,因此没有自然的方式来拆分减速器,可以将减速器合并为一个吗?Redux,何时拆分减速器?
-1
A
回答
0
是的,可以将减速机作为一体使用。比方说,如果我有一个用户reducer,我会考虑拆分reducer,如果它太大无法管理,或者它与用户无关,这是我的第一个。你只有9个开关盒,应该没问题。
0
案例陈述的数量并不是决定是否应该拆分缩减器的正确指标。相反,它是你的reducer动作处理程序正在工作的状态切片的嵌套深度如何。。如果它太深,代码可能会爆炸。
比方说你有这样的状态,形状:
{
cart: {
products: [ {name:"shirt"}, {name:"pants"} ],
checkout: false,
}
}
在单/全球减速的设置,你可能有这样的动作处理程序:
//reducer.js
case ADD_CART_PRODUCT:
const {newProduct} = payload
const {cart: {products}} = state
return {...state, cart: {...state.cart, products: [...products, newProduct] } }
不坏,但是你可以为影响的动作处理程序分割出状态切片,将您的代码缩小至此:
//cartReducer.js
case ADD_CART_PRODUCT:
const {newProduct} = payload
const {products} = state //this is actually state.cart from the global perspective
return {...state, products: [...products, newProduct] } }
相关问题
- 1. 如何从Redux的减速
- 2. Redux减速器不被称为
- 3. Redux:减速器的全局配置
- 4. 在redux减速器中处理错误
- 5. React/redux - Onclick对减速器的反应
- 6. 如何在pyspark中设置拆分和减速器的数量
- 7. 为什么Redux不将我的动作分配给减速器?
- 8. 大型应用程序中的拆分减速器
- 9. Redux的减速器遍历如何有效?
- 10. 如何返回Redux的减速器的对象数组状态
- 11. 阵营-Redux的路由器推与动作/减速器
- 12. 如何在多个redux减速器中同时触发单个初始动作?
- 13. 我的时刻的时间Redux的减速
- 14. Redux行动不叫减速机
- 15. Redux会减慢开发速度吗?
- 16. Redux - 减速机与动作的关系
- 17. Redux - 组合减速器如何知道应用状态的哪个子组通过减速器
- 18. Redux - 一对多缩减器
- 19. 使用Redux减速器更新对象的深层属性
- 20. 向最简单的Redux添加乘法减速器示例
- 21. Redux的单元测试 - 减速器和行动创造者
- 22. 访问状态从另一个减速器反应/ Redux
- 23. 处理ngrx/redux减速器功能中的错误/故障
- 24. 组合Redux减速器与同一组件的不同实例
- 25. 这个减速器是否符合Redux规则?
- 26. Redux - 保持相关的减速器同步
- 27. Redux:组合式减速器形状独立
- 28. Redux减速器呕吐间歇性错误
- 29. redux减速器流量不推断类型
- 30. 为什么Redux中没有组合减速器接收状态?