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

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

之后我就跑了

npm start 

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


当前回答

删除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运行你的应用程序。

其他回答

我尝试了每一个答案,但清洁我的npm缓存工作..

步骤:

Clean cache =====> npm cache清理力。 重新安装create-react-app =====> npm安装。 NPM开始!!

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

固定与

npm install --legacy-peer-deps

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

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

参考的问题

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

解决方案

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

可选择的解决方案

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

这个变通办法对我很管用

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

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