Reactjs 反应脚本:未找到命令

Reactjs 反应脚本:未找到命令,reactjs,Reactjs,我目前正在尝试使用CreateReact应用程序,它使用三个不同的包:react、react脚本和react dom。我已经安装了create react应用程序,然后当我切换到目录并点击npm start时,我得到一个react脚本:未找到命令。我在这方面遇到了很多问题。我可以看到react scripts在我的node\u modules文件夹中,但我在尝试运行npm start时一直未找到命令。我试图删除并重新安装我所有的node\u模块,但没有成功。还有其他人有这个问题吗 ✘ ✝ 

我目前正在尝试使用CreateReact应用程序,它使用三个不同的包:react、react脚本和react dom。我已经安装了create react应用程序,然后当我切换到目录并点击
npm start
时,我得到一个
react脚本:未找到命令
。我在这方面遇到了很多问题。我可以看到
react scripts
在我的
node\u modules
文件夹中,但我在尝试运行
npm start
时一直未找到
命令。我试图删除并重新安装我所有的
node\u模块
,但没有成功。还有其他人有这个问题吗

 ✘ ✝  Node/toDoApp/my-test   master±  npm start

> my-test@0.1.0 start /Users/jzilch/Desktop/Web 
Projects/Node:Express/Node/toDoApp/my-test
> react-scripts start

sh: react-scripts: command not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! my-test@0.1.0 start: `react-scripts start`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the my-test@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely 
additional logging output above.

首先删除项目文件夹中的
package lock.json
文件


然后通过
npm install
再次安装依赖项。这应该可以解决这个问题

我也曾经遇到过这个问题。要解决这个问题,请删除您的

节点\u模块
纱线锁紧装置
manifest_lock.json


它可以工作。

这通常是因为npm包安装不好(同时使用npm和纱线?)。它可能令人绝望,但如果你尝试这些步骤,它应该会起作用

第一个解决方案:

删除
node\u模块
文件夹。在项目的根文件夹中,运行

> yarn
> yarn run start
> yarn upgrade
> yarn
> yarn run start
第二种解决方案:

在项目的根文件夹中,运行

> yarn
> yarn run start
> yarn upgrade
> yarn
> yarn run start
下次您想使用CreateReact应用程序添加依赖项时,我建议您使用“纱线添加”而不是“npm安装”。
(来源:)

使用
rm
命令删除
/node\u modules
目录和
package lock.json
文件:

rm -rf node_modules
rm -f package-lock.json
使用以下命令安装react脚本:

npm install react-scripts
npm install
npm run start
使用以下命令安装依赖项:

npm install react-scripts
npm install
npm run start
通过运行以下命令启动本地服务器:

npm install react-scripts
npm install
npm run start

注意:如果您是Linux用户,请不要忘记在
npm
之前添加
sudo
命令。我在dockerizer环境中使用此命令。 我已经使用
package.json
在节点模块中进行了本地安装

因此,我补充说:

RUN npm install -g react-scripts
RUN npm install

这解决了我的困惑问题

我通过更改本地系统中的文件夹名,从

new/landing


但是,git分支名称仍然类似于“new/landing”。我的MAC系统就是这样。

这个问题我已经有好几年了,我最终很偶然地找到了解决方案。
结果是,任何文件夹名中都不能有空格

e、 g。
~/projects/tutorial/ReactJS/JavaScript框架:ReactJS/app name
无法工作,因为
JavaScript框架:ReactJS
包含空格。
一般来说,在文件夹/文件名中使用空格可能不是一个很好的做法,但我希望这能为用户节省至少4个小时的尝试和错误


我建议您也从文件夹名称中删除
!(为了安全起见)

当我使用
warn
时,我必须运行
warn add react scripts
一个选项是使用
-g
标志全局安装
react scripts
包。这将使该命令可用于节点,而不考虑工作目录

此命令将全局安装
react脚本

npm install -g react-scripts

创建应用程序使用纱线。您尝试过纱线开始吗?也尝试过纱线,并在首次尝试使用纱线全局添加后获得以下内容
✝  Node/toDoApp/my test  主人± 纱线开始纱线运行v1.3.2$react scripts start/bin/sh:react scripts:command not found错误命令失败,退出代码127。信息访问https://yarnpkg.com/en/docs/cli/run 有关此命令的文档。
如果在项目目录中运行npm install。发生了什么?所有的东西都安装了,但我在fsevents`>fsevents@1.1.2install/Users/jzilch/Desktop/Web Projects/Node:Express/Node/toDoApp/my test/Node_modules/fsevents>Node安装事件。js:182 thrower;//未处理的“错误”事件^`谢谢。我试图用自制软件卸载并重新安装Node,但仍然无法正常工作。有了纱线,我对可能断裂的东西有了更多的刺激。纱线开始返回
/bin/sh:react scripts:command not found
让我相信它试图在/bin/sh:而不是node_模块中找到这一细微之处。由于系统文件不是我的四十岁,因此对此不确定。我的问题是由于我在名为“npm/node”或
npm:node
的文件夹中使用了
npx create-react-app-name
而引起的。在另一个名为
npm node
的目录中使用该命令有效。您正在使用命令删除
package.json
而不是
package lock.json
:)Idk关于所有其他响应,但这是对我有效的响应。删除时使用“rm-rf”package.json不是一个目录,所以这里不需要-rf。