React17+Material UI v5环境下material-ui-color兼容问题解决咨询
解决方法
1. 锁定@material-ui/core的精确版本
把package.json里的@material-ui/core依赖从^4.11.2改成4.11.2——带^会让包管理器自动升级到4.12.x系列版本,这就是触发错误的核心原因:
{ "dependencies": { "@material-ui/core": "4.11.2", // 其他依赖保持不变 } }
2. 强制依赖版本匹配(针对npm/yarn)
- 用npm的话,在package.json里添加
overrides字段,强制锁定@material-ui/core和react-is的版本:
{ "overrides": { "@material-ui/core": "4.11.2", "react-is": "17.0.2" } }
- 用yarn的话,换成
resolutions字段:
{ "resolutions": { "@material-ui/core": "4.11.2", "react-is": "17.0.2" } }
3. 清理缓存重新安装依赖
删掉node_modules文件夹和对应的锁文件(package-lock.json或yarn.lock),然后重新安装:
# npm用户执行 rm -rf node_modules package-lock.json npm install # yarn用户执行 rm -rf node_modules yarn.lock yarn install
4. 确认安装结果
安装完成后,运行命令检查@material-ui/core的版本是否为4.11.2:
# npm npm list @material-ui/core # yarn yarn list @material-ui/core
做完这些,@material-ui/core会稳定在4.11.2版本,它对react-is的导出要求和React17.0.2完全兼容,不会再出现ForwardRef的导出错误,material-ui-color组件就能正常使用了。
内容的提问来源于stack exchange,提问作者Anand
相关产品推荐
相关产品推荐

