Maison > interface Web > js tutoriel > Que fait « npm install --legacy-peer-deps » et quand est-il recommandé ?

Que fait « npm install --legacy-peer-deps » et quand est-il recommandé ?

Linda Hamilton
Libérer: 2024-11-28 14:15:19
original
1034 Les gens l'ont consulté

What does `npm install --legacy-peer-deps` do and when is it recommended?

Que fait exactement npm install --legacy-peer-deps ? Quand est-il recommandé / Quel est un cas d'utilisation potentiel ?

TL;DR :

  • NPM v7 installe les dépendances homologues par défaut ; ce n'est pas le cas avec les versions précédentes de NPM.
  • Les modules NPM doivent nommer des versions spécifiques de leurs dépendances homologues.
  • Si vous avez déjà une dépendance homologue installée, mais pas avec une version nommée par le module, alors NPM v7 générera une erreur.
  • L'ajout de --legacy-peer-deps ignore cette nouvelle exigence, au risque d'introduire une rupture changements.

--legacy-peer-deps restaure le comportement d'installation des dépendances entre pairs de NPM v4 à v6

Une façon de penser à cet indicateur est qu'il ne fait pas quelque chose de nouveau ; cela dit plutôt à NPM de ne pas faire quelque chose de nouveau, puisque NPM v7 installe désormais les dépendances homologues par défaut.

Dans de nombreux cas, cela entraîne des conflits de versions, qui interrompront le processus d'installation.

L'indicateur --legacy-peer-deps a été introduit avec la v7 comme moyen de contourner l'installation automatique des dépendances homologues ; il indique à NPM d'ignorer les dépôts homologues et de procéder quand même à l'installation. C'est ainsi que les choses se passaient avec NPM v4 à v6.

Dépendances vs peerDependencies

Si vous n'êtes pas clair sur la différence entre les dépôts réguliers et les dépôts homologues, voici un peu de contexte :

  • Dépendances : Bibliothèques ou modules dont un module NPM a besoin dans afin de travailler en production.
  • peerDependencies : Une dépendance peer est une version spécifique ou un ensemble de versions d'une bibliothèque logicielle tierce avec laquelle un module est conçu pour fonctionner.

Ce problème est dû, en partie, à React v17

En raison du grand nombre de modules qui n'ont pas spécifiquement ajouté React v17 (ou plus récemment, React 18) en tant que dépendance homologue, il est désormais courant de rencontrer l'erreur d'impossibilité de résoudre l'arborescence des dépendances lors de l'exécution d'installations npm dans une application React v17.

Cette erreur se déclenchera chaque fois qu'un Le module (ou l'une de ses propres dépendances) répertorie une version majeure précédente de React en tant que dépendance homologue sans inclure spécifiquement React v17.

Comment pour vérifier les dépendances entre pairs pour un module donné

NPM lui-même ne répertorie pas les dépendances entre pairs sur les pages d'un module donné. Cependant, il existe une solution simple pour vérifier les dépôts homologues, avant ou après l'installation. Exécutez simplement :

npm info name-of-module peerDependencies
Copier après la connexion

Cette commande renverra le nom de chaque dépendance homologue ainsi que toutes les versions compatibles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal