使用create-react-app新建React项目运行npm start提示react-scripts无法识别
react-scripts 命令找不到问题修复方案
你已经确认依赖文件实际存在,不需要反复删除node_modules重装,按优先级从高到低排查以下问题即可:
- 优先排查项目路径合规性
这是Windows环境下同类报错最高发的诱因,占比超八成。检查你的项目存放路径是否包含中文、空格、特殊符号(比如C:\Users\小明\编程项目\my app、D:\学习资料\react&demo\dashboard这类路径都不符合要求),路径解析时会被Windows shell截断,直接导致无法识别.bin目录下的可执行文件。把项目移动到纯英文、无空格无特殊字符的路径下,比如D:\code\dashboard,再执行npm start测试即可。 - 修复npm脚本执行器配置
如果路径没问题,在项目根目录找到(没有就新建).npmrc文件,添加一行配置:
该配置强制npm使用系统默认cmd执行脚本,规避PowerShell执行策略、路径转义规则差异导致的可执行文件查找失败问题,配置保存后直接运行启动命令即可,无需重装依赖。script-shell=cmd.exe - 兜底方案:直接指定可执行文件相对路径
如果以上两步都不生效,可以跳过npm的.bin路径自动解析逻辑,直接修改package.json中的scripts字段,写全react-scripts的相对路径:
修改保存后重新执行"scripts": { "start": "node_modules/.bin/react-scripts start", "build": "node_modules/.bin/react-scripts build", "test": "node_modules/.bin/react-scripts test", "eject": "node_modules/.bin/react-scripts eject" }npm start即可。 - 排查系统环境变量配置
新开命令行窗口执行npm config get prefix,复制输出的路径,确认该路径、Node.js的安装路径都已加入系统环境变量的Path列表中,没有被安全软件篡改。添加完成后重启命令行工具再重试启动命令。
你日志里的
npm WARN config global --global, --local are deprecated是npm 8.x版本的通用提示,和本次报错没有关联,不需要单独处理。
内容的提问来源于stack exchange,提问作者user2371266
相关产品推荐
相关产品推荐

