突然 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
它对我有用。
试试这个:
- 删除文件夹 node_modules 和文件 package-lock.json
- 转到文件 package.json 并更改 react 和 react-dom的版本为17.0.0
- 现在运行
npm install
事情现在应该按预期进行。
这是要解决的问题:
npm 配置设置 legacy-peer-deps 真
解释:
--legacy-peer-deps 标志是在 v7 中引入的,作为绕过 peerDependency auto-installation 的一种方式;它告诉 NPM 忽略对等依赖并继续安装。这就是 NPM v4 到 v6 过去的样子。
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
甚至 --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
它对我有用。
试试这个:
- 删除文件夹 node_modules 和文件 package-lock.json
- 转到文件 package.json 并更改 react 和 react-dom的版本为17.0.0
- 现在运行
npm install
事情现在应该按预期进行。
这是要解决的问题:
npm 配置设置 legacy-peer-deps 真
解释:
--legacy-peer-deps 标志是在 v7 中引入的,作为绕过 peerDependency auto-installation 的一种方式;它告诉 NPM 忽略对等依赖并继续安装。这就是 NPM v4 到 v6 过去的样子。
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