npm start启动React项目报BigInt未定义错误如何解决
问题根因
ReferenceError: BigInt is not defined报错的直接原因是你当前使用的Node.js 8.3.0版本发布时间过早,不支持ES2020标准新增的BigInt基础类型。你项目依赖的webpack 5+版本已经使用了该语法,两者版本不兼容,导致启动失败。
修复步骤
你本地已经安装了1.1.9版本的nvm-windows,直接通过nvm切换到兼容的高版本Node.js即可,按顺序执行以下操作:
- 以管理员权限打开PowerShell或者CMD终端,执行命令安装Node.js 16 LTS长期支持版(对React项目兼容性最好):
nvm install 16.20.2
- 安装完成后执行命令,将全局默认Node.js版本切换到刚安装的版本:
nvm use 16.20.2
- 执行以下两个命令验证版本切换结果,正常会输出v16.20.2和对应8.x以上版本的npm:
node -v npm -v
- 进入你的项目根目录
C:\Users\mmjun\OneDrive\Desktop\bb-website\bb-website,清理旧版本依赖:- 删除根目录下的
node_modules文件夹 - 删除根目录下的
package-lock.json文件
- 删除根目录下的
- 在项目根目录下执行命令重新安装所有依赖:
npm install
- 依赖安装完成后,重新执行启动命令即可正常运行项目:
npm start
补充说明
- react-scripts 5.x版本最低要求Node.js 14.0.0,不要用低于该版本的Node.js运行项目,否则会持续出现各类语法兼容报错
- 如果执行
nvm use时提示权限错误,关闭当前终端,重新以管理员身份打开终端再执行命令即可 - nvm支持多版本Node.js共存,后续如果需要运行其他老项目,随时可以通过
nvm use 版本号切换对应版本
内容的提问来源于stack exchange,提问作者meems
相关产品推荐
相关产品推荐

