在 create-react-app 之后 React npm start 不起作用
Posted
技术标签:
【中文标题】在 create-react-app 之后 React npm start 不起作用【英文标题】:React npm start doesn't work after create-react-app 【发布时间】:2021-01-03 20:00:57 【问题描述】:我正在学习 React,我的英语很差。我已经有两个反应项目,但它们也不起作用:(我按照这个步骤操作,
npx create-react-app my-app cd 我的应用程序 npm 开始
但它不起作用。我再次尝试清理缓存和 npm install 但没有成功。我该如何解决这个问题?
> my-app@0.1.0 start /Users/edu/Documents/htdocs/my-app
> react-scripts start
There might be a problem with the project dependency tree.
It is likely not a bug in Create React App, but something you need to fix locally.
The react-scripts package provided by Create React App requires a dependency:
"babel-loader": "8.0.5"
Don't try to install it manually: your package manager does it automatically.
However, a different version of babel-loader was detected higher up in the tree:
/Users/edu/node_modules/babel-loader (version: 8.1.0)
Manually installing incompatible versions is known to cause hard-to-debug issues.
If you would prefer to ignore this check, add SKIP_PREFLIGHT_CHECK=true to an .env file in your project.
That will permanently disable this message but you might encounter other issues.
To fix the dependency tree, try following the steps below in the exact order:
1. Delete package-lock.json (not package.json!) and/or yarn.lock in your project folder.
2. Delete node_modules in your project folder.
3. Remove "babel-loader" from dependencies and/or devDependencies in the package.json file in your project folder.
4. Run npm install or yarn, depending on the package manager you use.
In most cases, this should be enough to fix the problem.
If this has not helped, there are a few other things you can try:
5. If you used npm, install yarn (http://yarnpkg.com/) and repeat the above steps with it instead.
This may help because npm has known issues with package hoisting which may get resolved in future versions.
6. Check if /Users/edu/node_modules/babel-loader is outside your project directory.
For example, you might have accidentally installed something in your home folder.
7. Try running npm ls babel-loader in your project folder.
This will tell you which other package (apart from the expected react-scripts) installed babel-loader.
If nothing else helps, add SKIP_PREFLIGHT_CHECK=true to an .env file in your project.
That would permanently disable this preflight check in case you want to proceed anyway.
P.S. We know this message is long but please read the steps above :-) We hope you find them helpful!
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-app@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-app@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/edu/.npm/_logs/2020-09-17T00_43_20_777Z-debug.log
【问题讨论】:
@DacreDenny 你能看一下吗? 除此之外还有输出吗? @ScottyJamison 我更新了,你能看到吗? 是的,谢谢,帮了大忙 另见:Create React App requires a dependency: "babel-loader": "8.1.0" 【参考方案1】:查看输出中的建议 6。
检查 /Users/edu/node_modules/babel-loader 是否在您的项目目录之外。 例如,您可能不小心在主文件夹中安装了一些东西。
听起来您有时不小心在您的主文件夹 (/Users/edu/
) 中而不是您的项目文件夹中进行了 npm 安装,并且您的项目正在获取此依赖项。
解决方法是从/Users/edu/
中删除 node_modules、package.json 和 package-lock.json,这些不需要在那里。
对于其他 Google 员工:上述修复可能无法解决您的具体问题 - 请仔细阅读错误消息,看看其他建议是否有帮助。很多时候错误信息是无用的,但每隔一段时间,就会有人真的花时间写出一些有用的东西。这是那些做得好的错误之一。
【讨论】:
非常感谢!我已经工作了几个小时,我快要发疯了:) 您好,npm start 可以正常工作,但 npm run build 现在不能正常工作。你有什么想法吗? @paws 我没有任何建议。随意打开一个新问题,如果需要,您可以在此评论线程中添加指向它的链接,以便我也可以查看它。 不是偶然的,是安装全局角度cli的结果。【参考方案2】:不妨试试:
npm cache clean
npm install
npm create-react-app my-app
cd my-app
npm run start
【讨论】:
从 1 到 7 运行上述步骤可能是一个好的开始。问题在于名为 babel-loader 的依赖项。以上是关于在 create-react-app 之后 React npm start 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
在使用 create-react-app 创建项目时有啥方法可以使用 NPM 而不是 Yarn
Webpack + `create-react-app` | ProvidePlugin 未将 React 作为模块加载
运行 create-react-app 构建脚本时如何设置构建 .env 变量?
尝试测试 create-react-app 项目时出现“ReferenceError:文档未定义”