可以使用React Hooks 替代 Redux

在组件切换的时候,当组件切换之后,组件会被卸载,对于组件内部有关的函数引用全部都会消失,作用域引用消失,闭包变量不复存在

所以使用组件内部缓存是行不通的,必须采用状态存储在组件外的方式。

全局的状态管理不仅仅可以用 Redux,React Hooks 也可以模拟出这种功能。

使用 useContext 和 useReducer 模拟出类似 redux 的状态管理功能。

但是,使用 Hooks 来替代 Redux 不是一个很好的方案。

虽然,Redux 有繁重的模板代码,并且引用 react-redux 会增加项目包的大小。

但是,Redux 有非常成熟的状态跟踪调试工具、非常成熟的数据模块化方案、成熟且强大的中间件功能。

客观来说,我认为 Redux 是短时间不可被替代的状态管理方案。

最后更新于