欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

npm安裝依賴報(bào)錯(cuò)ERESOLVE?unable?to?resolve?dependency?tree的解決方法

 更新時(shí)間:2023年04月12日 09:06:13   作者:梅花十三兒  
當(dāng)我們拿到一個(gè)前端項(xiàng)目的時(shí)候,想要把它運(yùn)行起來(lái),首先是要給它安裝依賴,下面這篇文章主要給大家介紹了關(guān)于npm安裝依賴報(bào)錯(cuò)ERESOLVE?unable?to?resolve?dependency?tree的解決方法,需要的朋友可以參考下

前言

現(xiàn)代前端項(xiàng)目開發(fā)中依賴管理已經(jīng)是不可或缺的一環(huán),然后由于各種問(wèn)題,如歷史原因、項(xiàng)目缺少維護(hù)等,前端項(xiàng)目在依賴管理中會(huì)遇到非常多的問(wèn)題。本篇文章討論其中一種,當(dāng) npm install 時(shí)遇到報(bào)錯(cuò) ERESOLVE unable to resolve dependency tree 的問(wèn)題原因以及如何解決。

報(bào)錯(cuò)信息

在一個(gè)安裝了 react@18.2.0 的項(xiàng)目中安裝依賴 ali-react-table,就會(huì)出現(xiàn)以下錯(cuò)誤。仔細(xì)閱讀錯(cuò)誤原因可以得知,ali-react-table 中使用 peerDependencies 定義了依賴于react@"^16.8.0 || ^17.0.1" 項(xiàng)目,和我們項(xiàng)目中的 React 版本號(hào)沖突了。雖然這里是因?yàn)?ali-react-table 已經(jīng)疏于維護(hù)并沒有更新依賴版本信息,但是我們對(duì)第三方依賴的可控性是比較低的,除了等待第三方依賴更新或者提 PR 等待合并之后發(fā)版,我們還有一些其他方法可以暫時(shí)解決這個(gè)問(wèn)題。

npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: vite-project@0.0.0
npm ERR! Found: react@18.2.0
npm ERR! node_modules/react
npm ERR! react@"^18.2.0" from the root project
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^16.8.0 || ^17.0.1" from ali-react-table@2.6.1
npm ERR! node_modules/ali-react-table
npm ERR! ali-react-table@"*" from the root project
npm ERR! 
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution. 

方案一:降級(jí)

依賴規(guī)則校驗(yàn)是在 npm@7 之后引入的,我們可以降級(jí) Node.js 或者 npm 來(lái)繞過(guò)校驗(yàn)就不會(huì)報(bào)錯(cuò)了。

nvm use 14.17.4

## or

npm i -g npm@6 

方案二:-f 或者 --legacy-peer-deps

其實(shí)我們知道 ali-react-table 時(shí)由于疏于維護(hù),所以沒有及時(shí)更新依賴版本信息。實(shí)際測(cè)試和我們項(xiàng)目里的 react@18.2.0 是可以運(yùn)行沒有問(wèn)題的,那么我們就可以安裝的時(shí)候帶上 --force 參數(shù)(簡(jiǎn)寫 -f)告訴 npm 強(qiáng)制安裝。

npm install -f 

另一個(gè)參數(shù)是 --legacy-peer-deps, 可以不用降級(jí) npm 也讓 npm install 的行為和舊版本一樣,參考文檔。不過(guò)這個(gè)參數(shù)實(shí)際使用效果可能依據(jù)項(xiàng)目存異,需要自行測(cè)試。

npm install --legacy-peer-deps 

方案三:yarn 的 resolutions 或者 npm 的 overrides

實(shí)際項(xiàng)目中可能不僅僅存在一個(gè)以上類似 ali-react-table 依賴版本和項(xiàng)目所需要的依賴版本不一致的問(wèn)題,可能會(huì)有好多依賴都會(huì)有該問(wèn)題,有時(shí)候我們知道項(xiàng)目的依賴版本關(guān)系,可以使用 resolutions(只有使用 yarn 才能使用,參考文檔) 或者 overrides(只有 npm@8 以上才能使用,參考文檔 ) 來(lái)指定、覆蓋第三方包指定的依賴版本。這個(gè)參數(shù)在其他一些場(chǎng)景也非常有效,比如所需要的第三方依賴缺少維護(hù)了、指定的版本是有問(wèn)題的版本等。

{"name": "project","version": "1.0.0","dependencies": {},"resolutions": {"react": "^18.2.0"}
} 
{"overrides": {"react": "^18.2.0"}} 

總結(jié)

依賴管理現(xiàn)在已是前端開發(fā)中重要的一環(huán),除了及時(shí)關(guān)注第三方依賴版本更新、大版本更新引起 Breaking Change 與自身項(xiàng)目是否兼容以外,也要針對(duì)自身項(xiàng)目選擇合適的第三方依賴,及時(shí)更新依賴版本,避免出現(xiàn)依賴版本問(wèn)題影響項(xiàng)目開發(fā)和項(xiàng)目運(yùn)行。遇到錯(cuò)誤時(shí)要看清錯(cuò)誤說(shuō)明找出根本錯(cuò)誤原因,對(duì)癥下藥找出適合的解決方法。

到此這篇關(guān)于npm安裝依賴報(bào)錯(cuò)ERESOLVE unable to resolve dependency tree的解決方法的文章就介紹到這了,更多相關(guān)npm安裝依賴報(bào)錯(cuò)ERESOLVE內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node.js中的fs.futimes方法使用說(shuō)明

    node.js中的fs.futimes方法使用說(shuō)明

    這篇文章主要介紹了node.js中的fs.futimes方法使用說(shuō)明,本文介紹了fs.futimes方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • node.js cookie-parser 中間件介紹

    node.js cookie-parser 中間件介紹

    這篇文章主要介紹node.js cookie-parser 中間件,講解的比較詳細(xì),需要的朋友可以參考下。
    2016-06-06
  • yarn與npm的命令行小結(jié)

    yarn與npm的命令行小結(jié)

    想必最近大家對(duì)新的JavaScript包管理工具yarn已經(jīng)有所耳聞,并已通過(guò)npm i -g yarn進(jìn)行了安裝,現(xiàn)在想知道怎么樣使用嗎?如果你了解 npm,你已經(jīng)會(huì)很大一部分啦!下面是這篇文章從npm切換到y(tǒng)arn的一些筆記。有需要的朋友們可以參考借鑒。下面來(lái)一起看看吧。
    2016-10-10
  • Node.js 8 中的 util.promisify的詳解

    Node.js 8 中的 util.promisify的詳解

    本篇文章主要介紹了Node.js 8 中的 util.promisify的詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • nodejs微信開發(fā)之接入指南

    nodejs微信開發(fā)之接入指南

    這篇文章主要介紹了nodejs微信開發(fā)之接入指南,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-03-03
  • 詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù)

    詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù)

    這篇文章主要介紹了詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Node.js 多線程實(shí)戰(zhàn)小結(jié)

    Node.js 多線程實(shí)戰(zhàn)小結(jié)

    在?Node.js?的世界中,多線程技術(shù)一直是一個(gè)受到廣泛關(guān)注的領(lǐng)域,本文主要介紹了Node.js 多線程實(shí)戰(zhàn)小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • 使用 Node.js 實(shí)現(xiàn)圖片的動(dòng)態(tài)裁切及算法實(shí)例代碼詳解

    使用 Node.js 實(shí)現(xiàn)圖片的動(dòng)態(tài)裁切及算法實(shí)例代碼詳解

    這篇文章主要介紹了使用 Node.js 實(shí)現(xiàn)圖片的動(dòng)態(tài)裁切功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • nodejs?express路由匹配控制及Router模塊化使用詳解

    nodejs?express路由匹配控制及Router模塊化使用詳解

    這篇文章主要為大家介紹了nodejs?express路由匹配控制及Router模塊化使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • Node.js圖片處理庫(kù)sharp的使用

    Node.js圖片處理庫(kù)sharp的使用

    這篇文章主要介紹了Node.js圖片處理庫(kù)sharp的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評(píng)論