【问题标题】:React Invalid Hook Call in Index.js in ReactDOM.renderReactDOM.render 中的 Index.js 中的 React 无效挂钩调用
【发布时间】:2020-06-07 12:55:54
【问题描述】:

这个问题让我很头疼,但是我在编译和运行时不断收到这个错误(我正在使用带有 react 应用程序的 .NET Core 3.0):

错误:无效的挂钩调用。钩子只能在函数组件的主体内部调用。这可能是由于以下原因之一:

  1. 您可能有不匹配的 React 版本和渲染器(例如 React DOM)
  2. 您可能违反了 Hooks 规则
  3. 您可能在同一个应用中拥有多个 React 副本

错误指向我的 ../src/index.js 文件:

这是显示的错误

这是标记为无效挂钩调用错误的代码

我不确定发生了什么,我花了 3 个小时试图修复它,但我就是无法显示主页。

我了解 hooks 错误,但我不明白为什么会调用它。

  1. 我有 React 和 React DOM 的匹配版本,16.13.1
  2. 对于我的 react 组件,我使用类。
  3. 我不确定如何检查不同的 react 副本

我对 React 很陌生,所以也许我在某个地方误解或搞砸了,请在这里帮助我,谢谢。

编辑:

【问题讨论】:

  • 请您也发布App组件的代码
  • 错误就是它所说的,你告诉我们你使用类组件,并且错误状态“仅在函数组件中使用钩子
  • 对不起,我不太明白,这是否意味着我必须切换到使用函数和钩子,或者我可以坚持我的课程吗?如果我坚持我的课程,我是否必须在引入钩子之前回到旧版本的 react ?像
  • 您不需要切换版本。您的 Route 路径之一在不允许的类中使用钩子。请避免发图片,最好贴实际代码或上传demo到codesandbox
  • 尝试(在您的 IDE 中)搜索 use 关键字...例如 useHookuseEffect 等。

标签: reactjs react-hooks


【解决方案1】:

检查客户端是否安装了redux。未安装在客户端目录而是服务器目录时会出现此错误。

检查客户端的package.json。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-19
    • 2021-04-20
    • 1970-01-01
    • 2020-10-03
    • 1970-01-01
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多