react-scripts 需要旧版本的 webpack
Posted
技术标签:
【中文标题】react-scripts 需要旧版本的 webpack【英文标题】:react-scripts required old version of webpack 【发布时间】:2020-09-13 18:39:00 【问题描述】:我在我的react项目中安装了webpack,但是每次使用npm start都会出现同样的错误:
Create React App 提供的 react-scripts 包需要依赖:
“webpack”:“4.42.0”
不要尝试手动安装它:您的包管理器会自动安装。 但是,在树的较高位置检测到不同版本的 webpack:
C:\react\minimoj\node_modules\webpack(版本:4.43.0)
我试图从 package.json 中删除 package-loc.json 文件 + 所有 node_modules + 删除 webpack 名称并使用 npm install重新安装它>。我也尝试过使用纱线,但没有帮助。我看到 node_modules 版本是 4.43,在我使用 npm install webpack 文件 package-loc.json 之后它显示 4.43,但在当我使用 npm start 的那一刻,它更改为 4.42 并发生错误。此外,我还重新安装了 node.js,但没有帮助。
【问题讨论】:
你使用什么版本的 react-scripts?尝试更新到 3.4.1。 我的版本是 3.4.1 :) 其实一开始为什么要安装webpack呢?它已预先配置并隐藏在 create-react-app 中。如果你想访问配置文件,你需要通过运行“npm runeject”来弹出。 哦,我不知道。我尝试安装 webpack,因为由于某种原因,我的所有 .css 文件都没有加载到组件中,我认为这是因为 webpack 不起作用。 【参考方案1】:创建 .env 文件并添加 SKIP_PREFLIGHT_CHECK=true
【讨论】:
【参考方案2】:我安装的 webpack 版本比 react_scripts 所需的更新。 为了解决这个问题,我从项目的 node_modules 中删除了 webpack 和 webpack-dev-server,转到了 项目目录之外的控制台 并运行
npm uninstall webpack
npm uninstall webpack-dev-server
然后跑了
npm install
npm run build
一切都很好,因为我的 package.json 是正确的,没有改变。
【讨论】:
我安装了一个全局 webpack 版本,删除它为我解决了问题(npm ls webpack
也很有帮助)【参考方案3】:
根据一些网站,由于 webpack 主要专注于常见的 js,我刚刚为我的 react 项目尝试了 rollup,事实证明它支持 es+ 更有效。我会极力推荐它。我花了几分钟的时间来完成所有的设置和准备。此外,作为一种好的做法,最好使用 yarn,因为 npm 在节点应用管理方面存在许多已知问题。
【讨论】:
以上是关于react-scripts 需要旧版本的 webpack的主要内容,如果未能解决你的问题,请参考以下文章
构建react项目,The react-scripts package provided by Create React App requires a dependency