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

create-react-app集成Material UI报Invalid hook call错误如何解决?

问题根因
  • 你使用的Material UI v5版本缺失必需的对等依赖:@emotion/react和@emotion/styled,这两个包是MUI v5的默认样式引擎,内部依赖React Hooks实现,未正确安装时会触发多份React副本检测,抛出无效Hook调用错误
  • 排除其余两种报错可能:你的React和React DOM版本完全匹配,App组件的Hooks使用(MUI图标内部Hook调用)也符合调用规则,不存在规则违反问题
修复步骤
  1. 先清空现有依赖和锁定文件,消除缓存冲突:
# Mac/Linux 执行
rm -rf node_modules package-lock.json

# Windows 执行
rd /s /q node_modules
del package-lock.json
  1. 重新安装完整的MUI依赖:
npm install @mui/material @emotion/react @emotion/styled @mui/icons-material
  1. 启动项目验证修复效果:
npm start
可选验证步骤

如果修复后依然报错,执行以下命令检查是否存在多份React副本:

npm ls react

如果输出中存在多个版本的React,统一对齐到你package.json中声明的17.0.2版本即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 20:54:00