【发布时间】:2022-09-27 19:38:09
【问题描述】:
几年前,我使用 create-react-app 创建了一个 react 项目。在我的 react 项目中,我依赖于 react-scripts@3.4.3 npm 包。但我也依赖于需要 react-scripts@4.0.3 包(所以不同版本)的 npm 包。运行npm install 时,我没有任何问题。但是在运行命令npm start时,我提示了这个错误:
The react-scripts package provided by Create React App requires a dependency:
\"webpack\": \"4.42.0\"
Don\'t try to install it manually: your package manager does it automatically.
However, a different version of webpack was detected higher up in the tree:
D:\\Dev\\Foo\\node_modules\\webpack (version: 4.44.2)
所以据我了解,我的 package.json 中的 react-scripts@3.4.3 需要 webpack@4.42.0,而另一个包需要 webpack@4.44.2 版本(由 npm 安装)。我检查了命令npm ls webpack 以查看树中需要哪些版本的 webpack。它证实了这一点。
我对 npm 的了解不是很好。我认为安装同一软件包的多个版本可能足够“智能”,但似乎并非如此。
请问我能做些什么来解决这个问题?
也非常感谢解释。了解我每天都在使用的工具的工作原理是一件好事。
-
它是足够聪明,可以安装同一个软件包的多个版本,这就是发生这种情况的原因。但是 CRA 会警告您,因为它可能会导致难以调试的错误。为什么不直接将项目升级到 react-scripts@4 (现在 5 已经出来了,此时 3 已经相当老了)?
-
哦,好吧,那我很糟糕。所以“错误”更多地出现在 CRA 上。将尝试升级 react-scripts 的版本,这样会更好。谢谢 !
标签: reactjs npm webpack react-scripts