Nalutas: Hindi malutas ang dependency%3A npm ERR%21 peer react%40%2217.0.1%22 mula sa react-dom%4017.0.1

Huling pag-update: 09/25/2023

Oo naman, magsimula tayo sa isyu sa kamay.

Ang NPM (Node Package Manager) ay isang hindi kapani-paniwalang kapaki-pakinabang na tool na namamahala sa mga dependency ng iyong mga proyekto. Gayunpaman, kung minsan ay maaari itong magtapon ng mga error na hindi agad malinaw. Ang isang karaniwang error ay ang peer dependency error, partikular na: `Hindi malutas ang dependency: npm ERR! peer react@”17.0.1″ mula sa react-dom@17.0.1`

Maaaring lumitaw ang error na ito kapag sinusubukan mong mag-install ng package na may peer dependencies na hindi natutugunan sa iyong kasalukuyang proyekto. Sa pangkalahatan, ang package na sinusubukan mong i-install ay umaasa sa ilang partikular na bersyon ng iba pang mga package na mai-install na. Sa kasong ito, ang react-dom na bersyon 17.0.1 ay humihingi ng peer ng react na bersyon 17.0.1.

Ngayon, sumisid tayo sa solusyon sa problemang ito, at pagkatapos ay magpatuloy sa kung paano ipatupad ito sa seksyon ng pagpapaliwanag ng sunud-sunod na code.

Solusyon sa Peer Dependency Error

Ang solusyon ay karaniwang may kinalaman sa pag-install ng tamang bersyon ng peer dependency, sa kasong ito React. Para dito, gagamitin namin ang isa sa mga pinakabagong feature ng npm, ang command na `–legacy-peer-deps`.

Ginagamit ang utos na ito kapag nag-i-install ng mga pakete, at sinasabi nito sa npm na huwag pansinin ang mga dependency ng peer at magpatuloy sa pag-install. Narito kung paano gamitin ito:

npm install --legacy-peer-deps

Gamit ang command na ito, i-install ng npm ang mga dependency na parang gumagamit ito ng bersyon sa ibaba ng npm 7, kung saan hindi Mahigpit ang mga peer dependencies.

Step-by-Step Code Explanation

Sa sandaling patakbuhin mo ang command gamit ang `–legacy-peer-deps`, sisimulan ng npm ang proseso ng pag-install. Sinusuri ng proseso ng pag-install ang package.json file ng package na sinusubukan mong i-install. Kung hindi natutugunan ang mga kinakailangang bersyon ng peer dependencies, kadalasang maglalagay ng error ang npm.

Gayunpaman, sa `–legacy-peer-deps`, binabalewala ng npm ang mga hindi pa nakikilalang peer dependency na ito at nagpapatuloy sa pag-install.

npm install react-dom@17.0.1 --legacy-peer-deps 

Ang code na ito ay mag-i-install ng bersyon 17.0.1 ng react-dom, hindi pinapansin ang peer dependency na kinakailangan.

Pag-unawa sa NPM, Mga Aklatan at Pamagat ng Mga Pag-andar

Ang NPM ay isang libre at open-source na package ecosystem para sa JavaScript, pangunahin itong ginagamit upang i-install at pamahalaan ang mga panlabas na module o package. Ang isang karaniwang npm package ay naglalaman ng isang 'package.json' na file. Kasama sa file na ito ang metadata tungkol sa package tulad ng pangalan nito, bersyon, paglalarawan, impormasyon ng may-akda, at higit pa.

Ang mga aklatan sa JavaScript ay mahalagang magagamit muli ng mga piraso ng code. Inililigtas nila ang mga developer mula sa pagsusulat ng ilang partikular na bloke ng code sa tuwing kailangan nila.

Ang function, sa kabilang banda, ay isang magagamit muli na bloke ng code na nagsasagawa ng isang partikular na gawain. Maaari itong tumanggap ng mga input at magbalik ng isang output. Ang isang function sa JavaScript ay tinukoy gamit ang keyword ng function, na sinusundan ng isang pangalan, na sinusundan ng mga panaklong ().

  • Ang problema sa peer dependency ay karaniwang nangyayari kapag ang kinakailangang bersyon ng isang package ay hindi tama, o hindi naka-install. Ang bersyon na ito ay tinukoy sa package.json file.
  • Ang paggamit ng flag na `–legacy-peer-deps` sa mga npm command ay nagbibigay-daan sa mga developer na laktawan ang error na ito.

Pakitandaan na sa pasulong, gugustuhin mong tiyakin na ang mga tamang bersyon ng mga pakete ay naka-install gaya ng tinukoy ng mga developer upang maiwasan ang mga potensyal na isyu sa pag-andar sa ibang pagkakataon.

Kaugnay na mga post: