Rumah >hujung hadapan web >tutorial js >Ralat Ketergantungan NPM

Ralat Ketergantungan NPM

Barbara Streisand
Barbara Streisandasal
2025-01-02 20:58:39968semak imbas

Membuat catatan pantas untuk mengingatkan diri saya pada masa hadapan cara membaca ralat pergantungan npm ini.

Kudos kepada siaran limpahan tindanan ini: https://stackoverflow.com/questions/76039613/how-do-i-read-npm-dependency-conflict-errors

Berikut ialah ralat saya dengan dua bahagian utama diserlahkan:

NPM Dependency error

Ini menyatakan "untuk klien@1.0.0 saya telah memasang react 18.3.0 TETAPI react-dom@19.0.0 memerlukan react 19.0.0."

Ok, jadi bagaimana kita menyelesaikannya? Pertama sekali, kita perlu memastikan kita memahami skema versi npm dengan fail package.json.

Langkah pertama ialah memahami sistem versi semantik yang digunakan oleh npm. Versi major 5, versi minor 10 dan versi patch 3 ialah 5.10.3, atau:

Versi semantik = MAJOR.MINOR.PATCH

Daripada artikel ini https://flaviocopes.com/npm-semantic-versioning/ kami mendapat perkara penting berikut untuk cara npm mentafsir perpustakaan dan versi yang hendak dipasang daripada fail package.json anda:

  • > mana-mana versi yang lebih tinggi daripada versi semasa anda
  • ^ - membenarkan pengemaskinian keluaran kecil dan tampalan. Cth: ^5.1.3. membenarkan pengemaskinian 5.10.3, tetapi tidak akan membenarkan pergi ke keluaran utama 6.
  • ~ membenarkan hanya keluaran tampalan

Versi ringkas fail package.json saya

{
"dependencies" : {
  "react": "^18.3.1"
  "@types/react-dom": "^18.2.21",
  }
}

Jadi masalah pertama di sini yang anda lihat dengan fail package.json saya ialah terdapat keluaran utama baharu sekarang untuk react iaitu versi major 19. "^" saya dalam package.json saya tidak akan membenarkannya dipasang .

Untuk memastikan saya memahami semua versi baharu yang mungkin perlu saya pertimbangkan dalam kebergantungan saya, saya menjalankan arahan berikut

npm lapuk

NPM Dependency error

Untuk menyelesaikan masalah saya, saya mengemas kini fail package.json saya untuk membenarkan semua versi minor dan tampalan react dan react-dom dalam versi major 19:

{
"dependencies" : {
  "react": "^19.0.0"
  "@types/react-dom": "^19.0.0",
  }
}

Juga sebelum menjalankan perintah npm i yang berguna untuk membetulkan semua ini, saya memadamkan folder node_modules dan package-lock.json saya. Saya agak pasti ini tidak perlu sekarang dengan penambahbaikan npm dibuat dari semasa ke semasa. Tidak rugi untuk melakukan ini semasa menyahpepijat walaupun kerana kedua-dua node_modules dan package-lock.json dicipta semula pada arahan pemasangan.

Kini masalah saya telah selesai! Semoga ini membantu.

Atas ialah kandungan terperinci Ralat Ketergantungan NPM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn