Comment nettoyer le dossier node modules des paquets qui ne sont pas dans le paquet.json?
Supposons que j'installe des paquets de projet avec {[0] } qui regarde dans package.json
pour les modules à installer. Après un certain temps, je vois que je n'ai pas besoin d'un module spécifique et supprime sa dépendance de package.json
. Ensuite, je supprime d'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
restent là et le reste doit aller, quelque chose comme npm clean
. Je sais que je peux les supprimer manuellement mais je voudrais avoir une belle fonctionnalité de sucre prêt à l'emploi pour cela.
8 réponses
Je pense que vous cherchez npm prune
npm prune [<name> [<name ...]]
Cette commande supprime les paquets "étrangers". Si un nom de paquet est fourni, alors seuls les paquets correspondant à l'un des noms fournis sont retiré.
Les paquets étrangers sont des paquets qui ne sont pas liste des dépendances du paquet parent.
Voir les documents: https://docs.npmjs.com/cli/prune
Vous pouvez supprimer votre dossier node_modules/ puis réinstaller les dépendances du 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 du paquet.json. Si les dépendances ont déjà été installées, npm essaiera d'utiliser la version mise en cache, en évitant de télécharger la dépendance une seconde fois.
En raison de son imbrication de 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
Première installation globale de rimraf
npm install rimraf -g
Allez dans le chemin en utilisant cmd où votre dossier node_modules et appliquez la commande ci-dessous
rimraf node_modules
Avez-vous essayé de mnp tailler?
Il devrait désinstaller tout ce qui n'est pas répertorié dans votre fichier de package
Simple il suffit d'exécuter
rm -r node_modules
En fait, vous pouvez supprimer n'importe quel dossier avec cette.
Comme rm-r AnyFolderWhichIsNotDeletableFromshiftdeleteordelete .
Il suffit d'ouvrir le gitbash déplacer à la racine du dossier et exécutez cette commande
J'espère que cela aidera.
Pour L'utilisateur Windows, solution alternative pour supprimer ce dossier répertorié ici: http://ask.osify.com/qa/567
Parmi eux, un outil gratuit: Long Chemin Fixateur est bon d'essayer: http://corz.org/windows/software/accessories/Long-Path-Fixer-for-Windows.php
Utilisez la commande suivante au lieu de npm install
npm ci