React项目npm install报错 react-scripts无法识别如何解决
React项目启动失败、npm install报错修复方案
问题现象
- React Web项目无法正常启动,执行
npm install命令时出现报错:
- 尝试清理npm缓存修复问题未生效,清理操作截图如下:

- 直接执行启动命令时,控制台返回报错信息:
'react-scripts' is not recognized as an internal or external command,报错截图如下:
- 项目
package.json配置如下:
{ "name": "pay-management", "version": "0.1.0", "private": true, "dependencies": { "@emotion/core": "^11.0.0", "@emotion/react": "^11.1.5", "@fortawesome/fontawesome-svg-core": "^1.2.34", "@fortawesome/free-brands-svg-icons": "^5.15.2", "@fortawesome/free-solid-svg-icons": "^5.15.2", "@fortawesome/react-fontawesome": "^0.1.14", "@material-ui/core": "^4.11.1", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "^4.0.0-alpha.57", "@testing-library/jest-dom": "^5.11.4", "@testing-library/react": "^11.1.0", "@testing-library/user-event": "^12.1.10", "autoprefixer": "7", "change-case": "^4.1.1", "lodash": "^4.17.21", "material-ui": "^0.20.2", "material-ui-bootstrap": "^2.0.0", "moment": "^2.29.1", "postcss": "7", "postcss-flexbugs-fixes": "4", "postcss-preset-env": "^6.7.0", "react": "^17.0.1", "react-beautiful-dnd": "^13.0.0", "react-csv-importer": "^0.3.0", "react-dom": "^17.0.1", "react-dropzone": "^11.2.4", "react-moment": "^1.1.1", "react-number-format": "^4.4.4", "react-papaparse": "^3.11.1", "react-resize-observer": "^1.1.1", "react-router-dom": "^5.2.0", "react-scripts": "4.0.1", "react-table": "^7.6.2", "react-timer-mixin": "^0.13.4", "web-vitals": "^0.2.4" }, "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" }, "eslintConfig": { "extends": [ "react-app", "react-app/jest" ] }, "globals": { "_": true }, "homepage": "url", "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "devDependencies": { "@tailwindcssinjs/macro": "^0.17.0", "cross-env": "^7.0.2", "tailwindcss": "^2.0.1-compat" }, "main": "index.js", "author": "", "license": "ISC" }
问题原因
报错核心是react-scripts依赖没装成功:之前npm install中途报错退出,项目的node_modules文件夹里根本没有这个包,启动时自然找不到对应命令。常见触发原因有三个:本地装的Node版本和react-scripts 4.0.1不兼容、npm缓存损坏、网络不好导致包下载不全。
修复步骤
按顺序执行以下操作即可解决问题:
- 先检查本地Node.js版本,
react-scripts@4.0.1仅兼容Node 10.x、12.x、14.x版本,执行node -v查看当前版本,若版本高于14.x(比如16、18、20版本)或低于10.x,先切换Node版本到14.x长期支持版再继续后续操作。 - 进入项目根目录,彻底清理残留的旧安装文件:
# 删除已有的依赖目录 rm -rf node_modules # 删除旧的依赖锁文件 rm -f package-lock.json # 强制清理npm缓存 npm cache clean --force
Windows系统用命令行操作的话,把rm替换成系统对应删除命令即可,嫌麻烦直接手动打开项目文件夹删除node_modules文件夹和package-lock.json文件更省事。
3. 切换npm源为国内镜像,避免网络问题导致安装失败:
npm config set registry https://registry.npmmirror.com
- 重新安装全量依赖:
npm install
- 等待安装无报错完成后,执行启动命令即可:
npm start
如果走完以上步骤仍提示找不到react-scripts,单独执行一次该包的安装命令再启动即可:
npm install react-scripts@4.0.1 --save npm start
内容的提问来源于stack exchange,提问作者Vasanth R
相关产品推荐
相关产品推荐

