返回
ESLint依赖冲突解决方案
前端
2024-02-05 00:47:35
在脚手架里面选择了ESLint后npm装包时会出现的依赖冲突
今天装包的时候一直报错误,烦都烦死了 有道翻译了一下大致上是上面上游依赖冲突. 怎么解决呢?百度了半天,果然百度才是yyds 因为npm版本省级了,(v8.3.1) npmV7之前的版本遇到依赖冲突会自动降级为最高满足的版本,不会报这个错误,在npmV7之后就不会自动降级了,就会报错,如下:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: test@1.0.0
npm ERR! Found: @babel/core@7.18.6
npm ERR! node_modules/@babel/core
npm ERR! @babel/core@"^7.12.13" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-transform-react-jsx@7.18.6
npm ERR! node_modules/@babel/plugin-transform-react-jsx
npm ERR! @babel/plugin-transform-react-jsx@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.12.13" from @babel/plugin-proposal-class-properties@7.18.6
npm ERR! node_modules/@babel/plugin-proposal-class-properties
npm ERR! @babel/plugin-proposal-class-properties@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-proposal-object-rest-spread@7.18.9
npm ERR! node_modules/@babel/plugin-proposal-object-rest-spread
npm ERR! @babel/plugin-proposal-object-rest-spread@"^7.18.9" from the root project
npm ERR! 1 more (@babel/plugin-syntax-jsx)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-transform-react-jsx@7.18.6
npm ERR! node_modules/@babel/plugin-transform-react-jsx
npm ERR! @babel/plugin-transform-react-jsx@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-proposal-class-properties@7.18.6
npm ERR! node_modules/@babel/plugin-proposal-class-properties
npm ERR! @babel/plugin-proposal-class-properties@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-proposal-object-rest-spread@7.18.9
npm ERR! node_modules/@babel/plugin-proposal-object-rest-spread
npm ERR! @babel/plugin-proposal-object-rest-spread@"^7.18.9" from the root project
npm ERR! 1 more (@babel/plugin-syntax-jsx)
npm ERR!
npm ERR! Conflicting peer dependency: @babel/core@7.18.6
npm ERR! node_modules/@babel/core
npm ERR! peer @babel/core@"^7.12.13" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-transform-react-jsx@7.18.6
npm ERR! node_modules/@babel/plugin-transform-react-jsx
npm ERR! @babel/plugin-transform-react-jsx@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.12.13" from @babel/plugin-proposal-class-properties@7.18.6
npm ERR! node_modules/@babel/plugin-proposal-class-properties
npm ERR! @babel/plugin-proposal-class-properties@"^7.18.6" from the root project
npm ERR! peer @babel/core@"^7.0.0-0" from @babel/plugin-proposal-object-rest-spread@7.18.9
npm ERR! node_modules/@babel/plugin-proposal-object-rest-spread
npm ERR! @babel/plugin-proposal-object-rest-spread@"^7.18.9" from the root project
npm ERR! 1 more (@babel/plugin-syntax-jsx)
解决方法一:
# 先卸载包
npm uninstall eslint --save-dev
# 全局安装eslint@8.0.1
npm i eslint@8.0.1 -g
# 添加环境变量PATH
export PATH=$PATH:/Users/xxx/node_modules/.bin
# 重新安装依赖
npm i
解决方法二:
npm i --legacy-peer-deps
解决方法三:
npm i --force
解决方法四:
npm i -D eslint@8.0.1
解决方法五:
npm i eslint@^7.32.0
总结
在脚手架里面选择了ESLint后npm装包时可能会遇到的依赖冲突问题,可以通过以上几种方法来解决。