Gérer les packages npm dans Visual Studio

npm vous permet d’installer et de gérer des packages pour une utilisation dans les applications Node.js et ASP.NET Core. Visual Studio simplifie l’interaction avec npm et l’exécution de commandes npm par le biais de l’interface utilisateur ou directement. Si vous ne connaissez pas npm et souhaitez en savoir plus, consultez la documentation de npm.

L’intégration de Visual Studio à npm diffère selon le type de votre projet.

Important

npm attend le dossier node_modules et package.json dans la racine du projet. Si la structure de dossiers de votre application est différente, vous devriez modifier votre structure de dossiers si vous voulez gérer des packages npm avec Visual Studio.

Projet CLI (.esproj)

À compter de Visual Studio 2022, le gestionnaire de package npm est disponible pour les projets CLI. Vous pouvez donc désormais télécharger les modules npm de la même façon que vous téléchargez des packages NuGet pour des projets ASP.NET Core. Vous pouvez ensuite utiliser package.json pour modifier et supprimer des packages.

Pour ouvrir le gestionnaire de package, dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud npm dans votre projet.

Open package manager from Solution Explorer

Ensuite, vous pouvez rechercher des packages npm, en sélectionner un et l’installer en sélectionnant Installer le package.

Install new npm package for esproj

Projets Node.js

Pour les projets Node.js (.njsproj), vous pouvez effectuer les tâches suivantes :

Ces fonctionnalités coopèrent et se synchronisent avec le système de projet et le fichier package.json dans le projet.

Prérequis

Vous devez installer la charge de travail de développementNode.js et le runtime Node.js pour ajouter la prise en charge de npm à votre projet. Pour obtenir des instructions détaillées, consultez Créer une application Node.js et Express.

Notes

Pour les projets Node.js existants, utilisez le modèle de solution À partir du code Node.js existant ou le type de projet Ouvrir un dossier (Node.js) pour activer npm dans votre projet.

Installer des packages à partir de l’Explorateur de solutions (Node.js)

Pour les projets Node.js, le moyen le plus simple pour installer des packages npm consiste à utiliser la fenêtre d’installation de package npm. Pour accéder à cette fenêtre, cliquez sur le nœud npm dans le projet, puis sélectionnez Installer de nouveaux packages npm.

Install new npm package for Node.js

Dans cette fenêtre, vous pouvez rechercher un package, spécifier des options et effectuer une installation.

Screenshot of the Install New npm Packages dialog.

  • Type de dépendance : choisissez parmi les packages Standard, Développement et Facultatif. Standard signifie que le package est une dépendance du runtime, alors que Développement signifie que le package est nécessaire uniquement pendant le développement.
  • Ajouter à package.json - Recommandé. Cette option configurable est dépréciée.
  • Version sélectionnée : sélectionnez la version du package que vous souhaitez installer.
  • Autres arguments npm : spécifiez d’autres arguments npm standard. Par exemple, vous pouvez entrer une valeur de version comme @~0.8 pour installer une version spécifique qui n’est pas disponible dans la liste des versions.

Vous pouvez voir la progression de l’installation dans la sortie npm dans la fenêtre Sortie (pour ouvrir la fenêtre, choisissez Afficher>Sortie ou appuyez sur Ctrl + Alt + O). Cette opération peut prendre un certain temps.

npm output

Conseil

Vous pouvez rechercher des packages à étendue en ajoutant au début de la requête de recherche l’étendue qui vous intéresse, par exemple en tapant @types/mocha pour rechercher les fichiers de définition TypeScript pour mocha. En outre, lors de l’installation de définitions de type pour TypeScript, vous pouvez spécifier la version de TypeScript que vous ciblez en spécifiant une version, par exemple @ts2.6, dans le champ d’argument npm.

Gérer les packages installés dans l’Explorateur de solutions (Node.js)

Les packages npm sont affichés dans l’Explorateur de solutions. Les entrées sous le nœud npm imitent les dépendances dans le fichier package.json.

Screenshot of the npm node in Solution Explorer showing the installation status of the npm packages.

État du package

  • Installed package - Installé et répertorié dans le fichier package.json
  • Extraneous package - Installé, mais pas explicitement répertorié dans le fichier package.json
  • Missing package - Non installé, mais répertorié dans le fichier package.json

Cliquez avec le bouton droit sur le nœud npm pour effectuer l’une des actions suivantes :

  • Installer les nouveaux packages npm Ouvre l’interface utilisateur pour installer de nouveaux packages.
  • Installer les packages npm Exécute la commande npm install pour installer tous les packages répertoriés dans le fichier package.json. (Exécute npm install.)
  • Mettre à jour les packages npm Met à jour les packages vers les versions les plus récentes, en fonction de la plage de contrôle de version sémantique (SemVer) spécifiée dans le fichier package.json. (Exécute npm update --save.) Les plages SemVer sont généralement spécifiées à l’aide de « ~ » ou « ^ ». Pour plus d’informations, consultez Configuration de package.json.

Cliquez avec le bouton droit sur un nœud de package pour effectuer l’une des actions suivantes :

  • Installer le ou les packages npm Exécute la commande npm install pour installer la version du package répertoriée dans le fichier package.json. (Exécute npm install.)
  • Mettre à jour le ou les packages npm Met à jour le package vers la version la plus récente, en fonction de la plage SemVer spécifiée dans le fichier package.json. (Exécute npm update --save.) Les plages SemVer sont généralement spécifiées à l’aide de « ~ » ou « ^ ».
  • Désinstaller le ou les packages npm Désinstalle le package et le supprime du fichier package.json (Exécute npm uninstall --save.)

Notes

Pour obtenir de l’aide sur la résolution des problèmes liés aux packages npm, consultez Résolution des problèmes.

Utiliser la commande .npm dans la fenêtre interactive de Node.js (Node.js)

Vous pouvez également utiliser la commande .npm dans la fenêtre interactive de Node.js pour exécuter des commandes npm. Pour ouvrir la fenêtre, cliquez avec le bouton droit sur le projet dans l’Explorateur de solutions et choisissez Ouvrir une fenêtre interactive de Node.js (ou appuyez sur Ctrl + K, N).

Dans la fenêtre, vous pouvez utiliser des commandes telles que les suivantes pour installer un package :

.npm install azure@4.2.3

Conseil

Par défaut, npm s’exécute dans le répertoire de base de votre projet. Si vous avez plusieurs projets dans votre solution, spécifiez le nom ou le chemin du projet entre crochets. .npm [MyProjectNameOrPath] install azure@4.2.3

Conseil

Si votre projet ne contient pas de fichier package.json, utilisez .npm init -y pour en créer un avec des entrées par défaut.

Projets ASP.NET Core

Pour les projets de type ASP.NET Core, vous pouvez intégrer la prise en charge de npm dans votre projet et utiliser npm pour installer des packages.

Remarque

Pour les projets ASP.NET Core, vous pouvez également utiliser le Gestionnaire de bibliothèque ou yarn au lieu de npm pour installer des fichiers JavaScript et CSS côté client. Une de ces options peut être nécessaire si vous avez besoin d’une intégration à MSBuild ou de l’interface CLI dotnet pour la gestion des packages, qui n’est pas fournie par npm.

Si votre projet n’inclut pas encore de fichier package.json, vous pouvez en ajouter un pour activer la prise en charge de npm en ajoutant un fichier package.json au projet.

  1. Pour ajouter le fichier package.json, cliquez avec le bouton droit sur le projet dans l’Explorateur de solutions et choisissez Ajouter>Nouvel élément (ou appuyez sur Ctrl + Maj + A). Utilisez la zone de recherche pour rechercher le fichier npm, choisissez le fichier de configuration npm, utilisez le nom par défaut, puis cliquez sur Ajouter.

  2. Incluez un ou plusieurs packages npm dans la section dependencies ou devDependencies du fichier package.json. Par exemple, vous pouvez ajouter les éléments suivants au fichier :

    "devDependencies": {
       "gulp": "4.0.2",
       "@types/jquery": "3.5.29"
    }
    

    Lorsque vous enregistrez le fichier, Visual Studio ajoute le package sous le nœud Dépendances/npm dans l’Explorateur de solutions. Si vous ne voyez pas le nœud, cliquez avec le bouton droit sur package.json et choisissez Restaurer les packages. Pour voir l’état d’installation du package, sélectionnez la sortie npm dans la fenêtre Sortie.

    Vous pouvez configurer des packages npm avec package.json. Ouvrez directement package.json ou cliquez avec le bouton droit sur le nœud npm dans l’Explorateur de solutions et choisissez Ouvrir package.json.

Résolution des problèmes liés aux packages npm

  • Si vous voyez des erreurs lors de la génération de votre application ou de la transpilation de code TypeScript, recherchez les incompatibilités de package npm comme source potentielle d’erreurs. Pour identifier les erreurs, vérifiez la fenêtre de sortie npm lors de l’installation des packages, comme décrit précédemment dans cet article. Par exemple, si une ou plusieurs des versions de package npm sont dépréciées et génèrent des erreurs, vous devrez peut-être installer une version plus récente pour corriger ces erreurs. Pour plus d’informations sur l’utilisation de package.json pour gérer les versions des packages npm, consultez Configuration de package.json.

  • Dans certains scénarios ASP.NET Core, l’Explorateur de solutions peut ne pas afficher l’état correct des packages npm installés en raison d’un problème connu décrit ici. Par exemple, le package peut apparaître comme n'étant pas installé lorsqu'il est installé. Dans la plupart des cas, vous pouvez mettre à jour l’Explorateur de solutions en supprimant package.json, en redémarrant Visual Studio et en ajoutant à nouveau le fichier package.json, comme décrit plus haut dans cet article. Ou, lors de l’installation de packages, vous pouvez utiliser la fenêtre de sortie npm pour vérifier l’état de l’installation.

  • Dans certains scénarios ASP.NET Core, le nœud npm dans l’Explorateur de solutions peut ne pas être visible une fois le projet généré. Pour rendre le nœud à nouveau visible, cliquez avec le bouton droit sur le nœud du projet et choisissez Décharger le projet. Cliquez ensuite avec le bouton droit sur le nœud du projet et choisissez Recharger le projet.

  • Pour les projets Node.js, la charge de travail de développement Node.js doit être installée pour la prise en charge de npm. npm nécessite Node.js. Si vous n’avez pas installé Node.js, nous vous recommandons d’installer la version LTS à partir du site web Node.js pour une compatibilité optimale avec les frameworks et bibliothèques externes.