结合使用上下文和Redux

时间:2020-06-18 17:18:20

标签: reactjs redux react-context

我在应用程序中大量使用Redux。我在Context中存储的属性数量也非常有限:

  • 当前登录用户的用户名
  • 屏幕几何信息(以在浏览器窗口调整大小时进行调整)

这是一种反模式吗?我应该将所有内容移到Redux并完全放弃Context吗?我倾向于回答是。所以问题是:

在同一应用程序中同时使用Context和Redux是否存在有效的用例?或者它是代码的味道?

1 个答案:

答案 0 :(得分:1)

不,我不认为有一个原因可以同时使用两者。 通常,“如果您仅在使用Redux以避免将props传递给深度嵌套的组件,则可以用Context API替换Redux”。

如果您需要更高级的功能,例如可预测的状态容器,异步操作等,请选择Redux。

请原谅,但两者之间的“上下文切换”只会使您,您的应用程序以及应用程序中的未来开发人员感到困惑。

在您的情况下,username的东西肯定可以属于redux缩减器,并且屏幕几何信息看起​​来像是足以存在于React中并作为道具传递下来的基本信息。虽然,当然也可以将其存储为Redux状态