'npm start' 返回错误:“项目依赖树可能有问题”

新手上路,请多包涵

我是编码新手,并且对为什么无法正确设置 React 有疑问。上周我为此苦苦挣扎,然后终于做到了。但现在我又遇到了同样的问题,没有任何效果。

我有一个项目,我从 npx create-react-app 开始,然后当我 cd 进入项目时,我遇到了这个问题:

项目依赖树可能有问题。这可能不是 Create React App 中的错误,而是您需要在本地修复的错误。

Create React App 提供的 react-scripts 包需要依赖:

“网络包”:“4.29.6”

不要试图手动安装它:你的包管理器会自动安装。但是,在树的较高位置检测到不同版本的 webpack:

/Users/aliceparker/node_modules/webpack(版本:4.33.0)

众所周知,手动安装不兼容的版本会导致难以调试的问题。

如果您希望忽略此检查,请将 SKIP_PREFLIGHT_CHECK=true 添加到项目中的 .env 文件中。这将永久禁用此消息,但您可能会遇到其他问题。

要修复依赖关系树,请尝试按确切顺序执行以下步骤:

  1. 删除项目文件夹中的 package-lock.json(不是 package.json!)和/或 yarn.lock。
  2. 删除项目文件夹中的 node_modules。
  3. 从项目文件夹中 package.json 文件中的依赖项和/或 devDependencies 中删除“webpack”。
  4. 运行 npm install 或 yarn,取决于你使用的包管理器。

在大多数情况下,这应该足以解决问题。如果这没有帮助,您可以尝试其他一些方法:

  1. 如果您使用 npm,请安装 yarn ( http://yarnpkg.com/ ) 并用它重复上述步骤。这可能会有所帮助,因为 npm 已经知道包提升的问题,这些问题可能会在未来的版本中得到解决。

  2. 检查 /Users/aliceparker/node_modules/webpack 是否在您的项目目录之外。例如,您可能不小心在主文件夹中安装了一些东西。

  3. 尝试在您的项目文件夹中运行 npm ls webpack。这将告诉你哪个其他包(除了预期的 react-scripts)安装了 webpack。

如果没有其他帮助,请将 SKIP_PREFLIGHT_CHECK=true 添加到项目中的 .env 文件中。如果您仍然想继续,这将永久禁用此预检检查。

PS 我们知道这条消息很长,但请阅读上面的步骤 :-) 我们希望它们对您有所帮助!

我已按照上述步骤操作。还是得到问题。我还全局卸载了 webpack 并重新安装了它。

这是我的 package.json 文件的样子:

 `{
  "name": "ravenous-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.8.6",
    "react-dom": "^16.8.6",
    "react-scripts": "3.0.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}`

任何人都可以指导我解决这个问题吗?

(PS。我尝试创建一个新项目,但遇到同样的问题……)

原文由 Alice 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 729
2 个回答

在终端中,运行:

cd ~

然后:

ls

您应该会看到一个文件列表。如果 node_modules 包含在该列表中(看起来应该如此),您想要删除该文件夹。您可以像这样在终端中执行此操作:

rm -rf node_modules

但请记住:这不会将文件夹发送到垃圾箱。它将不可撤销地删除它。 rm -rf 是一个强大的命令。如果这让您感到紧张,请键入 open . 代替。这将在 Finder 中打开您的“家”( ~ ) 目录,您可以在那里以熟悉的右键单击发送到垃圾箱的方式删除 node_modules

希望有帮助!

原文由 davidfloyd91 发布,翻译遵循 CC BY-SA 4.0 许可协议

就我而言,我以这种方式解决了我的问题

  1. 在文件夹的根目录下创建一个 .env react folder
  2. 类型 SKIP_PREFLIGHT_CHECK=true 内部 .env 文件
  3. 现在在 cmd npm start 中运行。

原文由 Krishna Jangid 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏