繁体   English   中英

sh: react-scripts: 运行 npm start 后找不到命令

[英]sh: react-scripts: command not found after running npm start

我将一个 React 应用程序克隆到我的系统上并运行了以下命令

npm install -g create-react-app
npm install --save react react-dom

之后我跑了

npm start 

但它引发了上述错误,它在我将它推送到 github 的我的其他系统上工作正常。但是在克隆 windows 或 mac 后它在任何其他系统上都不起作用。

检查node_modules目录是否存在。 在一个新的克隆之后,很可能没有node_modules (因为这些是.gitignore 'd)。

解决方案

运行npm install (或yarn )以确保下载所有 deps。

替代解决方案

如果node_modules存在,请使用rm -rf node_modules将其删除,然后运行npm install (或yarn )。

尝试了以上所有方法,但没有任何效果,所以我使用npm i react-scripts并且它有效

我有类似的问题。 就我而言,它有助于安装 Yarn 并首先执行命令

yarn

然后执行命令

yarn start

如果您克隆的项目具有 yarn.lock 文件,这也可能对您有用。 希望能帮助到你!

你不应该全局安装 react-scripts,对我来说这解决了这个问题:

npm install --save react react-dom react-scripts

如果这仍然不起作用:

  1. 更新到最新的 npm 版本: npm install -g npm@latest
  2. 删除node_modules目录
  3. 重新安装所有依赖项: npm install

https://github.com/facebookincubator/create-react-app

npm install -g create-react-app

create-react-app my-app
cd my-app/
npm start

您可以全局安装 create-react-app 包。 之后,您运行它并创建一个名为my-app的项目。 输入您的项目文件夹,然后运行npm start 如果这不起作用,请尝试运行npm install然后npm start 如果这不起作用,请尝试更新您的节点版本和/或 npm。

在 package.json 中,我改变了

"start": "react-scripts start"

"start": "NODE_ENV=production node_modules/react-scripts/bin/react-scripts.js start"

我希望这可以解决某些人的问题。 尽管上面的其他解决方案似乎对我不起作用。

我有这个问题很久了,我最终偶然找到了我的解决方案。
事实证明,任何文件夹名称中都不能有空格或古怪的字符

例如~/projects/tutorial/ReactJS/JavaScript Framework: ReactJS/app-name将不起作用,因为JavaScript Framework: ReactJS包含空格。
一般来说,在文件夹/文件名中使用空格可能不是很好的做法,但我希望这可以为某人节省至少 4 小时的反复试验。

此外,应避免使用任何非字母数字字符

当您使用npm install而不是yarn install安装软件包时会发生此错误,反之亦然。

npm install --save react react-dom react-scripts

上面的命令对我有用。

使用npm i --legacy-peer-deps对我有用。

我不知道它具体执行了以下哪个操作:

  • 安装对等依赖项的最新稳定版本。
  • 安装您正​​在安装的核心依赖项使用的对等依赖项的版本。

但我认为它执行后一种操作。 如果我错了,请随时告诉我^-^

当我重新开始使用 create-react-app 时,这有时让我感到困惑,请确保您的NODE_ENV变量设置为开发而不是生产,因为 npm install 不会安装 package.json 中的 devDependencies。

如果您在 Docker 容器中遇到此问题,只需确保 node_modules 未添加到 .dockerignore 文件中。

我遇到了同样的问题 sh1:找不到反应脚本。 对我来说,这是解决方案

安装material-ui后刚遇到这个问题。

只需再次运行npm install即可解决。

只是做一个纱线安装解决了我的问题

删除 package-lock.json 和 node_modules 然后 npm install 对我有用。

如果其他答案都不能正常工作(在更新 npm 等之后)。 我强烈建议您在桌面上安装该项目。

创建反应应用项目名称

如果有人在尝试这些解决方案后仍然遇到此问题:请检查您的项目路径,因为节点在使用带间距的目录名称时存在一些问题。 我更改了所有名称中包含空格的目录名称,并且效果很好。

解决方案想法来自: https ://npm.community/t/react-scripts-not-found/8574

我正在使用纱线顺便说一句

你不应该在你的路径中使用空格和一些特殊字符,例如使用“&”。 在我的情况下,我使用的是这条路径:“D:\P&D\mern”,由于这个“&”,我浪费了 50 分钟试图解决这个问题! :/

生活和学习!

如果您已经尝试了所有方法但没有解决问题,请尝试重命名目录名称。 如果文件夹名称包含大写字母,react 将不会启动。

在发出react-scripts build请求后,我只是随机遇到了这个“react-scripts:找不到命令”错误,以前工作得很好。

简单地重新启动我的系统即可解决问题。

如果有人愿意只使用 npm,则运行此npm i react-native-scripts --save ,然后运行 ​​npm start 或您使用的任何命令

解决方案1:

删除 package-lock.json 文件,然后输入 -> npm install

解决方案2:

/Users/piyushbajpai/.npm/_logs/2019-03-11T11_53_27_970Z-debug.log

就像这是我的调试路径——>所以你会在控制台中找到这个——>按下命令并点击链接,你会发现错误行; 像这样:

详细堆栈错误:nest_form@0.1.0 start: react-scripts start

解决方案3:

用新的方式删除 node_module 和 npm i。

解决方案4:

转到 node_module 并删除 jses 文件夹并将其删除,然后执行 npm i 并再次从 npm start 开始

我对最新版本的纱线1.15.1-1有疑问

我已经通过降级到较低版本来修复它sudo apt-get install yarn=1.12.3-1

对我有用的解决方案如下。 尝试使用此命令创建 React 应用程序。

create-react-app react-app --scripts-version 1.1.5

在 macOS 上使用@/符号重命名目录以匹配我的 NPM 包命名空间的名称后,我遇到了这个错误。

当 NPM 命令在我的本地node_modules中查找已安装的包时,由于 macOS 重写目录路径的方式,它找不到它。 在没有@/的情况下重命名目录后,我再次启动并运行。

只是你必须恢复包来解决这个问题,所以只需运行命令:

npm install 或 yarn install

这对我有用。

如果你使用纱线:

  1. 删除yarn.lock
  2. yarn
  3. 然后yarn start

如果您使用的是 npm:

  1. 删除package-lock.json
  2. 运行npm install
  3. 然后npm start

如果上述解决方案不起作用并且您看到以下错误:

npm ERR! The operation was rejected by your operating system.

npm ERR! It is likely you do not have the permissions to access this file as the current user

尝试使用sudo npm install

我尝试了每个答案,但清理我的 npm 缓存有效..

脚步:

  1. 清理缓存 =====> npm 缓存清理力。
  2. 重新安装 create-react-app =====> npm install create-react-app.
  3. npm 安装。
  4. npm 开始!!!

对我来说,它是删除package-lock.jsonnode_modules然后再次运行npm install

在花了太多时间尝试上述所有解决方案之后,我可以肯定地说:

如果您遇到此问题,请检查您的路径。 如果路径包含任何特殊字符或空格,只需重命名它并确保新路径没有任何空格或特殊字符。 然后再次运行它。

只需运行这些命令

npm install
npm start

或者

yarn start

希望这对你有用谢谢

这些解决方案都不适合我。 我发现问题是我在其中创建项目的目录,我不知道为什么,但是当我在该目录之外创建项目时它起作用了。 我的解决方案是将目录从“React/Ionic”更改为“ionic-react”。 可能不仅项目本身应该是小写的,而且它的父文件夹也应该是小写的,或者可能是目录名称中的“/”是问题所在。 希望这有帮助。

npm install --legacy-peer-deps

如果你使用 npm 安装并且 npm 版本小于 7,那么它的 npm 最有可能以更智能的方式运行。 因此,它将尝试与其他依赖(peer deps)(如果找到更高版本)一起安装 react,这可能会破坏库 react。 附加 --legacy-peer-deps 将告诉 npm “不要做新的事情”,并安装 package.json 中给出的内容...

顺便说一句,人们似乎觉得纱线很舒服,因为这个“即使找到也不要安装更高版本”是自动内置在纱线中的

参考: 一个参考的问题

这种解决方法对我有用

// in your package.json replace 
"start": "react-scripts start"

// with:
"start": "node_modules/react-scripts/bin/react-scripts.js start"

删除节点模块

  1. 运行npm 安装
  2. 之后运行npm start

如果以上不起作用

  1. 删除节点模块
  2. 删除package-lock.json
  3. 运行npm 安装
  4. 然后npm start

如果上述解决方案不能解决您的问题,请尝试以下对我有用的方法:

  1. 如果您想在另一个端口上启动或 PORT command not found 错误,请执行以下步骤:
    1. 打开package.json文件
    2. 内部脚本用下面的“start”替换启动命令:“set PORT=3006 && react-scripts start”

在我的 Mac 终端运行这段代码之前,我遇到了同样的问题:

sudo npm install -g yarn

显然,我的机器上缺少纱线

  1. 删除 package-lock.json 文件
  2. 删除 node_modules 文件夹
  3. sudo npm i --force
  4. 输入您的笔记本电脑登录密码(如果询问)
  5. 等待 node_modules 安装
  6. npm 开始

在启动 react 项目之前运行npm i

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM