突然 React 无法执行 'create-react-app' 命令。为什么会发生这种情况,我该如何解决?

Suddenly React cannot execute the 'create-react-app' command. Why is this happening and how can I solve it?

甚至 --force 或 --legacy-peer-deps 都不起作用。

成绩单:

npx create-react-app my-app

Creating a new React app in /home/zahid/my-app.

Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts with cra-template...

added 1353 packages in 2m

171 packages are looking for funding
  run `npm fund` for details

Initialized a git repository.

Installing template dependencies using npm...
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: my-app@0.1.0
npm ERR! Found: react@18.0.0
npm ERR! node_modules/react
npm ERR!   react@"^18.0.0" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"<18.0.0" from @testing-library/react@12.1.5
npm ERR! node_modules/@testing-library/react
npm ERR!   @testing-library/react@"^12.0.0" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See /home/zahid/.npm/eresolve-report.txt for a full report.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/zahid/.npm/_logs/2022-04-11T22_25_02_229Z-debug-0.log

npm install --no-audit --save @testing-library/jest-dom@^5.14.1 @testing-library/react@^12.0.0 @testing-library/user-event@^13.2.1 web-vitals@^2.1.0 failed

npm config set legacy-peer-deps true

执行对我有帮助(Linux)。

首先尝试运行:

npm config set legacy-peer-deps true

并再次尝试您的命令。 它对我有用!

以下是对我有用的方法:

  • 运行 npx create-react-app 正常并得到错误
  • 进入 package.json 文件,将 React 版本从 18.0.0 更改为 17.0.0
  • 删除 node_modules 文件夹。
  • 然后 运行 npm install.

没有更多错误。

首先尝试运行这个命令:

npm config set legacy-peer-deps true

然后输入命令

npx create-react-app app-name

它对我有用。

试试这个:

  1. 删除文件夹 node_modules 和文件 package-lock.json
  2. 转到文件 package.json 并更改 reactreact-dom的版本为17.0.0
  3. 现在运行npm install

事情现在应该按预期进行。

这是要解决的问题:

  1. npm 配置设置 legacy-peer-deps 真

    解释:

    --legacy-peer-deps 标志是在 v7 中引入的,作为绕过 peerDependency auto-installation 的一种方式;它告诉 NPM 忽略对等依赖并继续安装。这就是 NPM v4 到 v6 过去的样子。

  2. npx create-react-app my-app

使用:

npm config set legacy-peer-deps true

我 运行 cmd 上的此代码为 @bey said 然后尝试创建一个应用程序。它在 Windows 10 上没有任何问题。我认为最快和最简单的方法是这个。您也可以尝试降级 React(包 React)和 18 岁以下的 react-dom 版本。

这对我有用

我在 package.json 中更改了这个(我降级了版本):

"react": "^18.0.0",
"react-dom": "^18.0.0",

"react": "^17.0.0",
"react-dom": "^17.0.0",

然后,记得删除项目主文件夹中的文件夹 /nodes_modules 和 运行:

npm i