Comment nettoyer le dossier node_modules des paquets qui ne sont pas dans package.json?

Supposons que j’installe les packages de projet avec npm install dans package.json pour que les modules soient installés. Au bout d’un moment, je constate que je n’ai pas besoin d’un module spécifique et que je supprime sa dépendance de package.json . Ensuite, je supprime certains autres modules de package.json car ils ne sont plus nécessaires et d’autres sont remplacés par des alternatives.

Maintenant, je veux nettoyer le dossier node_modules afin que seuls les modules listés dans package.json y restnt et que le rest doive y aller, quelque chose comme npm clean . Je sais que je peux les supprimer manuellement, mais je voudrais avoir une fonctionnalité de sucre prête à utiliser pour cela.

Je pense que vous cherchez un npm prune

npm prune [ [

Cette commande supprime les paquets "superflus". Si un nom de package est fourni, seuls les packages correspondant à l'un des noms fournis sont supprimés.

Les packages externes sont des packages qui ne figurent pas dans la liste des dépendances du package parent.

Voir les documents: https://docs.npmjs.com/cli/prune

Vous pouvez supprimer votre dossier node_modules / puis réinstaller les dépendances de package.json.

 rm -rf node_modules/ npm install 

Cela effacerait tous les paquets installés dans le dossier actuel et installerait uniquement les dépendances à partir de package.json. Si les dépendances ont déjà été installées, npm essaiera d’utiliser la version en cache, évitant de télécharger la dépendance une seconde fois.

En raison de l’imbrication de son dossier, Windows ne peut pas supprimer le dossier car son nom est trop long. Pour résoudre ce problème, installez RimRaf:

 npm install rimraf -g rimraf node_modules 

Avez-vous essayé le pruneau npm?

il devrait désinstaller tout ce qui n’est pas répertorié dans votre fichier de package

https://npmjs.org/doc/cli/npm-prune.html

simple juste courir

 rm -r node_modules 

En fait, vous pouvez supprimer n’importe quel dossier avec cela.

comme rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDelete .

il suffit d’ouvrir le mouvement gitbash à la racine du dossier et d’exécuter cette commande

J’espère que cela aidera.

Première installation mondiale de rimraf

 npm install rimraf -g 

Accédez au chemin en utilisant cmd où votre dossier node_modules et appliquez la commande ci-dessous

 rimraf node_modules 

Pour l’utilisateur Windows, une solution alternative pour supprimer ce dossier est répertoriée ici: http://ask.osify.com/qa/567

Parmi eux, un outil gratuit: Long Path Fixer est bon à essayer: http://corz.org/windows/software/accessories/Long-Path-Fixer-for-Windows.php

Utilisez la commande suivante au lieu de npm install

 npm ci