在最小的例子中,无效的钩子调用错误[关闭] 。

问题描述 投票:0回答:1

我试图用React前端写一个SPA,而我写的极少的代码却在抱怨一个无效的钩子调用。

据我所知,根据错误信息,造成这个错误的原因主要有三个。

  1. 你的React和渲染器(比如React DOM)的版本可能不匹配。
  2. 你可能违反了钩子的规则
  3. 你可能在同一个应用程序中拥有多个React副本

我查过了 npm ls reactnpm ls react-dom 而且他们都报告说各自的包只安装了一个,版本是16.13.1,所以我不认为这是原因1或原因3。至于违反了hooks规则,鉴于代码就是这样,这似乎是不可能的。

import { useState } from "react";
import ReactDOM from "react-dom";

const Main = () => {
  const [count, setCount] = useState(0);

  return(
    <>
    </>
  );
};

const reactRoot = document.getElementById("react-root");
ReactDOM.render(Main(), reactRoot);

在我看来这是一个完美的功能组件 很明显没有循环或条件。这里还可能有什么其他问题?

javascript reactjs react-hooks react-dom
1个回答
1
投票

正如评论中所指出的,我的意思是使用JSX标签。<Main /> 而不是叫 Main().

© www.soinside.com 2019 - 2024. All rights reserved.