在使用useContext()时不断遇到标准的React钩子错误.使用这个钩子的好模式是什么?



我试图使用useContext()钩子,但一直运行到标准的React钩子错误(例如钩子只能在函数内调用,可能重复的React版本等)。认为这是我的本地计算机上的配置问题,我尝试并成功地在这个沙箱中复制了这个问题:https://codesandbox.io/s/contextapi-hooks-wjvuk?file=/src/components/pages/Home.js

我已经看了很多教程,也读了一些帖子,但是没有一个成功的解决方案能给我指明解决问题的方向。

我相信我在实现中遗漏了一个小细节,所以任何帮助/建议,无论是实际的还是理论的,来巩固我对React和上下文api的理解,我将非常感激。

干杯!

只允许在组件内部使用钩子。目前,您的Home函数没有在任何地方用作组件,因此您不能在其中使用useContext。试着替换这一行:

<Route exact path="/" render={Home} />

:

<Route exact path="/"><Home /></Route>

最新更新