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

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

之后我就跑了

npm start 

但是它抛出了上面提到的错误,它在我的其他系统上工作得很好,我把它推到了github上。但克隆后,无论是windows还是mac,它都不能在任何其他系统上工作。


当前回答

如果你在Docker容器中遇到这个问题,只要确保node_modules没有被添加到.dockerignore文件中。

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

其他回答

删除node_modules

运行NPM install 之后运行NPM start

如果以上都不行

删除node_modules 删除package-lock.json 运行NPM install 然后NPM开始

如果以上解决方案不能解决你的问题,试试下面的方法:

如果你想启动另一个端口或者port命令没有发现错误,那么执行以下步骤: 打开的包。json文件 脚本内部的开始命令替换如下 "start": "set PORT=3006 && response -scripts start" 要改变你的应用程序的端口,你也可以在项目的根目录下创建一个新的文件名。env,并在其中写入port =3006(然后保存文件)。现在使用npm start运行你的应用程序。

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

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

这让我一次又一次地感到困惑,当我有一个新的开始创建-反应-应用程序时,请确保你的NODE_ENV变量被设置为开发而不是生产,因为你的包中的devDependencies。NPM install不会安装Json。

这个变通办法对我很管用

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

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

我也有类似的问题。在我的例子中,安装Yarn并首先执行命令是有帮助的

然后执行命令

纱线开始

如果你克隆的项目有纱线,这也可以为你工作。锁文件。希望能有所帮助!