sass-loader与webpack版本冲突解决方案

#npm i 错误解决记录#

最开始错误 :拉取代码,增加依赖时,报错

问题:

在安装sass-loader@10.1.1时,发现与现有的webpack版本有冲突。

当前项目已经安装了webpack@4.28.4(通过peer dependency requirements from other packages),但是sass-loader@10.1.1要求webpack的版本是^4.36.0 || ^5.0.0。

而当前项目中的webpack版本是4.28.4,低于4.36.0,因此不满足要求。

sass-loader@10.1.1 与项目中已安装的 webpack@4.28.4 版本不兼容)

复制代码
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: sass-loader@10.1.1
npm error Found: webpack@4.28.4
npm error node_modules/webpack
npm error   peer webpack@"^4.0.0" from @intervolga/optimize-cssnano-plugin@1.0.6
npm error   node_modules/@intervolga/optimize-cssnano-plugin
npm error     @intervolga/optimize-cssnano-plugin@"^1.0.5" from @vue/cli-service@3.5.3
npm error     node_modules/@vue/cli-service
npm error       dev @vue/cli-service@"3.5.3" from the root project
npm error   peer webpack@"^4.0.0 || ^5.0.0" from @soda/friendly-errors-webpack-plugin@1.8.0
npm error   node_modules/@soda/friendly-errors-webpack-plugin
npm error     @soda/friendly-errors-webpack-plugin@"^1.7.1" from @vue/cli-service@3.5.3
npm error     node_modules/@vue/cli-service
npm error       dev @vue/cli-service@"3.5.3" from the root project
npm error   19 more (@vue/cli-plugin-babel, @vue/cli-plugin-eslint, ...)
npm error
npm error Could not resolve dependency:
npm error peer webpack@"^4.36.0 || ^5.0.0" from sass-loader@10.1.1
npm error node_modules/sass-loader
npm error   dev sass-loader@"10.1.1" from the root project
npm error
npm error Conflicting peer dependency: webpack@5.99.9
npm error node_modules/webpack
npm error   peer webpack@"^4.36.0 || ^5.0.0" from sass-loader@10.1.1
npm error   node_modules/sass-loader
npm error     dev sass-loader@"10.1.1" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.

尝试解决:npm uninstall sass-loader

但此时npm install sass-loader@8 --save-dev 执行时还是有问题(原因sass-loader@8.0.2也需要webpack@^4.36.0 || ^5.0.0,而我们的webpack是4.28.4(低于4.36.0),所以仍然不满足)

复制代码
pm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: jnpf-web@3.4.1
npm error Found: webpack@4.28.4
npm error node_modules/webpack
npm error   peer webpack@"^4.0.0" from @intervolga/optimize-cssnano-plugin@1.0.6
npm error   node_modules/@intervolga/optimize-cssnano-plugin
npm error     @intervolga/optimize-cssnano-plugin@"^1.0.5" from @vue/cli-service@3.5.3
npm error     node_modules/@vue/cli-service
npm error       dev @vue/cli-service@"3.5.3" from the root project
npm error   peer webpack@"^4.0.0 || ^5.0.0" from @soda/friendly-errors-webpack-plugin@1.8.0
npm error   node_modules/@soda/friendly-errors-webpack-plugin
npm error     @soda/friendly-errors-webpack-plugin@"^1.7.1" from @vue/cli-service@3.5.3
npm error     node_modules/@vue/cli-service
npm error       dev @vue/cli-service@"3.5.3" from the root project
npm error   19 more (@vue/cli-plugin-babel, @vue/cli-plugin-eslint, ...)
npm error
npm error Could not resolve dependency:
npm error dev sass-loader@"8" from the root project
npm error
npm error Conflicting peer dependency: webpack@5.99.9
npm error node_modules/webpack
npm error   peer webpack@"^4.36.0 || ^5.0.0" from sass-loader@8.0.2
npm error   node_modules/sass-loader
npm error     dev sass-loader@"8" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.

解决:

先 npm uninstall sass-loader

再npm install sass-loader@7.3.1 --save-dev

查阅sass-loader的版本历史:

  • sass-loader v7.x 支持 webpack 4 (包括早期版本)

  • 根据错误信息,sass-loader@8.0.2需要webpack>=4.36.0,所以如果我们用7.x版本,可能就可以兼容webpack4.28.4。

注意:

不要使用 --force--legacy-peer-deps:这会导致依赖树混乱,可能在运行时崩溃

相关推荐
90后的晨仔9 小时前
从 H5 到 uni-app:一篇写给前端小白的"翻译指南"
前端·vue.js·前端框架
陈随易9 小时前
moon,apt和yum之外linux系统命令安装新选择
前端·后端·程序员
IT小盘10 小时前
13-企业Prompt模板-角色任务约束与输出格式
java·前端·prompt
徐小夕10 小时前
开源!我用SQLite + DuckDB打造了一款可视化AI问数平台
前端·算法·github
leslie11810 小时前
babel笔记
前端
用户0595401744611 小时前
Redis 记忆存储踩坑实录:一个并发写入 Bug 让我排查了 4 小时
前端·css
小徐_233312 小时前
Wot UI 2.3.0 发布:二维码组件来了,Open Wot 与 wot-starter 同步更新
前端·微信小程序·uni-app
kyriewen12 小时前
Claude自己跑出去hack了3家公司——我为什么还在用它写代码
前端·ai编程·claude
IT_陈寒12 小时前
SpringBoot自动配置的坑,这次真踩疼我了
前端·人工智能·后端
子兮曰12 小时前
AI 浏览器 Agent 的安全困局:当自动化工具可以偷走你的登录态
前端·人工智能·后端