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

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

之后我就跑了

npm start 

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


当前回答

安装Yarn就解决了我的问题

其他回答

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

固定与

npm install --legacy-peer-deps

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

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

参考的问题

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

通过再次运行npm install解决了这个问题。

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

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

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

如。 ~/projects/tutorial/ReactJS/JavaScript框架:ReactJS/app-name 不会工作,因为JavaScript框架:ReactJS包含空格。 一般来说,在文件夹/文件名中使用空格可能不是很好的实践,但我希望这可以为某人节省至少4个小时的试验和错误。

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