You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复React Hook useState报错:textForm不符合组件/钩子规范

修复React Hook "useState"调用报错的方案

情况1:textForm 是React函数组件

React要求函数组件名称必须以大写字母开头,才能被识别为合法组件并允许内部调用Hook。只需将函数名改为首字母大写的TextForm即可:

function TextForm() {
  const [text, setText] = useState("");
  // 组件业务逻辑
  return <div>{text}</div>;
}

// 在其他组件中正常使用
function App() {
  return <TextForm />;
}

情况2:textForm 是自定义Hook函数

自定义Hook的命名规则要求必须以use开头,这样React才能识别它为合法的Hook,允许内部嵌套调用其他Hook。将函数名改为useTextForm即可:

function useTextForm() {
  const [text, setText] = useState("");
  // Hook内部逻辑,比如封装文本处理方法
  const handleTextChange = (newValue) => {
    setText(newValue.trim());
  };
  return { text, handleTextChange };
}

// 在任意组件中调用这个自定义Hook
function InputComponent() {
  const { text, handleTextChange } = useTextForm();
  return (
    <input
      type="text"
      value={text}
      onChange={(e) => handleTextChange(e.target.value)}
    />
  );
}

内容的提问来源于stack exchange,提问作者Abdul Baseer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 13:05:27