reactjs - React Context API 是 Redux 的最佳替代品和新替代品吗
问题描述
我在我的许多 React 应用程序中都使用Redux,这是使用 Redux 管理应用程序状态并使状态成为“单一事实来源”的好方法。
但是在React 16.3中,引入了Context API的新概念,它还提供了一种在组件之间共享值/状态的方法,例如 Redux Store,而无需显式地通过树的每一层传递一个 prop。
那么,React Context API 是完全替代还是我们可以说是 Redux 的替代品,并且将来会 弃用react-redux ?
解决方案
实际上react-redux v6现在正在使用新的 Context API!
redux 为您提供了更多功能 -> 管理 reducer、调度功能、中间件、devtools 等等的能力......此外还有一些有用的隐藏功能,例如如果 props没有更改reat-redux
,则不重新渲染组件的能力mapStateToProps
.
所以redux
+react-redux
会给你比 更多的权力Context Api
,这取决于你的需要。
顺便说一句,react 似乎会逐渐集成redux
到他们的 api 中,他们useReducer
在未来的Hook APIredux
中添加了该功能,这与api非常相似
推荐阅读
- rsync - 可以创建rsync等待文件,然后同时复制它
- xamarin.forms - 将扬声器中的音频切换到耳机,反之亦然,但麦克风已静音
- exception - 何时使用向量中断与非向量中断?
- oracle - Windows 10重启后Oracle18C无法打开PDB
- reactjs - 为使用酶返回 jsx 元素的对象编写测试用例
- c++ - 从类对象到结构变量的 memcpy
- excel - 我怎样才能使这段代码更有效率,以便它运行得更快?
- python - Python 可执行文件:python 的模块文件在哪里?
- ssh - SSH 是否允许用户在没有密码和密钥的情况下登录?
- python - 如何定义导入模块的函数