React JS:HOC(Recompose)或Redux

时间:2018-12-05 14:04:55

标签: reactjs redux recompose

我必须处理当前使用Recompose的compose功能开发的React JS应用程序。 [https://github.com/acdlite/recompose][1]

根据从头开始重写应用程序的计划,最佳选择是“重新组合”还是“ Redux”?

重组创建者停止对此软件包进行主动维护。我该怎么办?继续使用“重新合成”还是移到Redux?

1 个答案:

答案 0 :(得分:1)

正如@estus所说,Redux和recompose不等效。

您可能知道,Redux仅用于保持应用程序的状态,这意味着当您使用服务并获得响应,修改某些UI组件的值等时,将分派操作并通过reducer进行操作更新商店中应用程序的状态。然后,重新渲染订阅商店的UI组件。

另一方面,Recompose允许您增强功能组件。

例如,为功能组件添加自定义道具,添加生命周期以及状态和处理程序。

此外,重组理念是使组件尽可能地薄,然后将其拆分以分离职责,然后与增强器组成。

这很有意义,因为您可以在不同的组件中重复使用重复的逻辑。

Here一个不使用重组

的示例

Here与“重构”相同

最后,我想说的是,您可以使用Redux来保持状态,而可以使用Recompose来保持状态简单,分离职责,使功能组件由封装了特定逻辑的少量增强器增强。

在React的未来版本中,我认为大多数Recompose实用程序都可以添加到库中。