我必须处理当前使用Recompose的compose功能开发的React JS应用程序。 [https://github.com/acdlite/recompose][1]
根据从头开始重写应用程序的计划,最佳选择是“重新组合”还是“ Redux”?
重组创建者停止对此软件包进行主动维护。我该怎么办?继续使用“重新合成”还是移到Redux?
答案 0 :(得分:1)
正如@estus所说,Redux和recompose不等效。
您可能知道,Redux仅用于保持应用程序的状态,这意味着当您使用服务并获得响应,修改某些UI组件的值等时,将分派操作并通过reducer进行操作更新商店中应用程序的状态。然后,重新渲染订阅商店的UI组件。
另一方面,Recompose允许您增强功能组件。
例如,为功能组件添加自定义道具,添加生命周期以及状态和处理程序。
此外,重组理念是使组件尽可能地薄,然后将其拆分以分离职责,然后与增强器组成。
这很有意义,因为您可以在不同的组件中重复使用重复的逻辑。
Here一个不使用重组
的示例Here与“重构”相同
最后,我想说的是,您可以使用Redux来保持状态,而可以使用Recompose来保持状态简单,分离职责,使功能组件由封装了特定逻辑的少量增强器增强。
在React的未来版本中,我认为大多数Recompose实用程序都可以添加到库中。