使用 React Hooks 时出现 UseState 错误

IT技术 reactjs react-hooks
2021-05-13 02:35:49

我正在使用钩子,但出现此错误

第 25 行:在函数“contact”中调用 React Hook“React.useState”,该函数既不是 React 函数组件,也不是自定义 React Hook 函数 react-hooks/rules-of-hooks 第 26 行:React Hook“React.useState”是在函数“contact”中调用,它既不是 React 函数组件,也不是自定义 React Hook 函数 react-hooks/rules-of-hooks 第 27 行:在函数“contact”中调用 React Hook“React.useState”,它既不是 React函数组件或自定义 React Hook 函数 react-hooks/rules-of-hooks

export default function contact() {

 const [messageInput, setMessageInput] = React.useState("");
 const [email, setEmail] = React.useState("");
 const [name, setName] = React.useState("");

 const enables =
   messageInput.length > 0 &&
   email.length > 0 &&
   name.length > 0;


 return (

<div className="App">

我之前做过一个类似的项目,我使用我的旧项目作为参考。这在我的旧项目中没有发生。

2个回答

钩子规则 lint 规则使用命名约定来推断函数的用途。以 开头的函数use被假定为钩子。以大写字母开头的函数被假定为组件。contact都不是。将其更改为Contact.

组件名称应大写,尝试将联系人更改联系人您可以在此处找到与此问题相关的详细对话:React Hook “useState” 在函数“app”中调用,它既不是 React 函数组件,也不是自定义的 React Hook 函数