安装React Bootstrap后出现useState读取错误,如何验证并解决版本冲突?
解决React Bootstrap版本冲突问题
问题原因
你遇到的TypeError: Cannot read properties of null (reading 'useState')错误,大概率是因为React 17与最新版React Bootstrap不兼容。React Bootstrap 3.x及以上版本要求React 18+,而你的项目使用的是React 17.0.2,版本不匹配导致了这个错误。
验证版本的方法
执行以下命令查看已安装包的具体版本:
npm list react react-bootstrap bootstrap
该命令会输出三个包的精确版本号,你可以对照React Bootstrap的版本支持规则:
- React Bootstrap 3.x → 需要React 18+
- React Bootstrap 2.x → 兼容React 16.14.0+和React 17.x
安装适配版本的步骤
- 先卸载当前的React Bootstrap:
npm uninstall react-bootstrap
- 安装与React 17兼容的最新React Bootstrap 2.x版本:
npm install react-bootstrap@^2.9.0
- 检查你的
package.json,确认依赖更新为:
"dependencies": { "bootstrap": "^5.1.0", "react": "^17.0.2", "react-bootstrap": "^2.9.0" }
(注:Bootstrap 5.1.0与React Bootstrap 2.x完全兼容,无需修改Bootstrap版本)
额外排查步骤
如果安装适配版本后仍有问题,可以清除缓存后重新安装依赖:
rm -rf node_modules package-lock.json npm install
内容的提问来源于stack exchange,提问作者JustWantsToCode
相关产品推荐
相关产品推荐

