在阅读了有关上下文的官方文档(https://reactjs.org/docs/context.html)之后,我觉得它的使用应该主要限于当我们有一些我们可以考虑“全局”的变量的情况下,我们必须发送到不同嵌套级别的许多组件(如当前主题、语言环境、当前经过身份验证的用户)。
Context 旨在共享可被视为 React 组件树“全局”的数据,例如当前经过身份验证的用户、主题或首选语言。
和
上下文主要用于在不同嵌套级别的许多组件需要访问某些数据时。谨慎应用它,因为它使组件重用更加困难。
我想使用 Context 来促进组件树中彼此相距较远的组件之间的通信。许多用户为此使用了 Redux(尽管这不是它的主要目的),这并没有同样令人沮丧,即使与 React 一起使用(通过 react-redux 包)这种方法在内部由 Context 提供支持。
Context 与 redux + react-redux 相比有什么缺点(除非 Redux 有不同的更新状态的方式),这应该让我在所描述的场景中不使用 Context 吗?文档说它使组件重用变得更加困难。它是如何做到的,这个 con 不是也与 redux + react-redux duo 有关吗?