React ReferenceError: process is not defined 错误解决
要解决 React 中的“Uncaught ReferenceError: process is not defined”,需要在项目的根目录中打开终端并通过运行 npm install react-scripts@latest
更新 react-scripts 包的版本,并在必要时重新安装依赖项 .
在项目的根目录(package.json 文件所在的位置)目录中打开终端并运行以下命令。
# 👇️ 使用 NPM
$ npm install react-scripts@latest
# --------------------------------------------
# 👇️ 使用 YARN
$ yarn add react-scripts@latest
该错误是由
react-error-overlay
包引起的,该包具有已更新以支持 webpack v5 并且与 react-scripts v4 不兼容的依赖项。
如果错误没有解决,请尝试安装 6.0.9 版本的
react-error-overlay
包。
使用下面的命令进行安装。
# 👇️ 使用 NPM
$ npm install --save-dev react-error-overlay@6.0.9
# --------------------------------------------
# 👇️ 使用 YARN
$ yarn add react-error-overlay@6.0.9 --dev
我们添加了 react-error-overlay
包的 6.0.9 版本作为开发依赖项。
现在打开我们的 package.json 文件并添加以下解决方案对象。
{
"resolutions": {
"//": "See https://github.com/facebook/create-react-app/issues/11773",
"react-error-overlay": "6.0.9"
}
}
如果错误未解决,请尝试删除我们的 node_modules 和 package-lock.json(或 yarn.lock)文件,重新运行 npm install
并重新启动 IDE。
# 👇️ delete node_modules and package-lock.json
$ rm -rf node_modules
$ rm -f package-lock.json
$ rm -f yarn.lock
# 👇️ clean npm cache
$ npm cache clean --force
$ npm install
Yarn 会自动将 react-error-overlay
包解析为 6.0.9 版本。
但是,如果我们使用 npm 并且错误仍然存在,请将以下预安装脚本添加到我们的 package.json 文件中。
package.json
{ "scripts":{ "preinstall": "npx npm-force-resolutions", } }
npm-force-resolutions
包修改你的 package-lock.json 文件以强制安装特定版本的传递依赖。
出于我们的目的,我们要确保始终安装 react-error-overlay
包的 6.0.9 版本。
总结
要解决 React 中的“Uncaught ReferenceError: process is not defined”,请在项目的根目录中打开终端并通过运行 npm install react-scripts@latest
更新 react-scripts 包的版本,并在必要时重新安装依赖项 .