Zoals algemeen bekend kan elke npm-module worden geïnstalleerd door een eenvoudige opdracht uit te voeren: npm install <module_name>
.
Ik heb een paar modules geïnstalleerd die ik niet meer gebruik en ik wil ze er gewoon uit halen. Ik heb hier een paar vragen over:
-
Hebben we een commando of proces om een module uit de root te verwijderen (zoiets als
npm uninstall <module_name>
)
of volstaat het om de modulebestanden te verwijderen? -
Wat voor gevolgen heeft het voor ons als we de ongebruikte modules behouden?
Antwoord 1, autoriteit 100%
Het commando is gewoon npm uninstall <name>
De Node.js-documenten https://npmjs.org/doc/bevatten alle opdrachten die u moet weten met npm.
Een lokale installatie bevindt zich in de map node_modules/
van uw toepassing. Dit heeft geen invloed op de toepassing als een module daar blijft staan zonder verwijzingen ernaar.
Als u een globaal pakket verwijdert, zullen alle toepassingen die ernaar verwijzen echter crashen.
Hier zijn verschillende opties:
npm uninstall <name>
verwijdert de module uit node_modules
maar werkt package.json
niet bij
npm uninstall <name> --save
verwijdert het ook uit dependencies
in package.json
npm uninstall <name> --save-dev
verwijdert het ook uit devDependencies
in package.json
npm uninstall -g <name> --save
verwijdert het ook globaal
Antwoord 2, autoriteit 5%
Als het niet werkt met npm uninstall <module_name>
probeer het dan globaal door -g
te typen.
Misschien moet je het gewoon doen als superUser/beheerder met sudo npm uninstall <module_name>
.
Antwoord 3, autoriteit 3%
Nou, om een volledig antwoord op deze vraag te geven, zijn er twee methoden (we noemen de geïnstalleerde module bijvoorbeeld module1):
-
Om module1 te verwijderen zonderpackage.json te wijzigen:
npm uninstall module1
-
Om module1 te verwijderen metpakket.json te wijzigen en het te verwijderen uit de afhankelijkheden in package.json:
npm uninstall --save module1
Opmerking: om de bovengenoemde opdrachten te vereenvoudigen, kunt u -Sgebruiken in plaats van –saveen kunt u remove, rm, r, un, ontkoppelenin plaats van verwijderen
Antwoord 4, autoriteit 2%
Ik installeer stylusstandaard onder mijn thuismap, dus ik gebruik gewoon npm uninstall stylus
om het los te koppelen, of je kunt npm rm <package_name>
uit.
Antwoord 5
De Node.js-module verwijderen:
npm uninstall <module_name>
Hiermee wordt de module verwijderd uit de map node_modules, maar niet uit het bestand package.json. Dus wanneer we npm opnieuw installeren, zal het de module downloaden.
Dus om de module uit bestand package.jsonte verwijderen, gebruik:
npm uninstall <module_name> --save
Dit verwijdert ook de afhankelijkheid van het bestand package.json.
En als u een algemene module wilt verwijderen, kunt u het volgende gebruiken:
npm -g uninstall <module_name> --save
Hiermee wordt de afhankelijkheid globaal verwijderd.
Antwoord 6
Als u pakketten in de map node_modulesin bulk wilt verwijderen, kunt u ze ook uit het bestand package.jsonverwijderen, het opslaan en vervolgens npm prune
in de terminal.
Hiermee worden de pakketten verwijderd die in het bestandssysteem aanwezig zijn, maar niet worden gebruikt/gedeclareerd in het bestand package.json.
P.S.: Dit is met name handig in Windows, omdat u vaak problemen kunt ondervinden met het niet kunnen verwijderen van sommige bestanden vanwege de “overschrijding van de padlengtelimiet”.
Antwoord 7
Je kunt het volgende ook als steno gebruiken:
npm un packageName
of npm rm packageName
Opmerking: voeg -g
toe aan het einde van de opdracht om globale pakketten te verwijderen.
Antwoord 8
Soms werkt npm uninstall -g packageName
niet.
In dit geval kunt u het pakket handmatig verwijderen.
Ga op Mac naar map /usr/local/lib/node_modules
en verwijder de map met het gewenste pakket. Dat is het. Controleer uw lijst met wereldwijd geïnstalleerde pakketten met dit commando:
npm list -g --depth=0
Antwoord 9
Ik heb dit op de harde manier ontdekt, ook al is het schijnbaarduidelijk.
Ik heb in eerste instantie geprobeerd om door de node_modulesdirectory te lopen met npm uninstall module-name
met een simpele for-lus in een script. Ik heb ontdekt dat het niet werkt als je het volledige pad aanroept, bijvoorbeeld
npm uninstall module-name
werkte, maar
npm uninstall /full/path/to/node_modules/module-name
werkte niet.
10
UPDATE VOOR NPM 5:
vanaf npm 5.0.0 , geïnstalleerde / verwijderde modules worden toegevoegd / verwijderd Als een afhankelijkheid standaard, dus de --save
is niet langer nodig.
Voer
uit
npm uninstall <package>
Bijvoorbeeld:
npm uninstall mongodb
Het verwijdert de module van de map NODE_MODULES en ook het -pakket.json -bestand.
11
Om een module te verwijderen met behulp van NPM, kunt u gebruiken:
npm uninstall moduleName
Ook, als u wilt verwijderen en wilt dat de verandering wordt weergegeven in uw pakket.json, dan kunt u de vlag van de Besloten gebruiken, zoals deze:
npm uninstall moduleName --save
OR
npm uninstall -S
En als u een module van DevDEPENTENCYS wilt verwijderen en wilt dat de wijziging wordt weergegeven in Package.json, dan kunt u -d-vlag gebruiken, zoals deze:
npm uninstall moduleName -D
Antwoord 12
De optie uninstall
werkte niet voor mij toen ik hetzelfde commando probeerde te gebruiken als het commando dat ik gebruikte bij het installeren (aangezien ik aan het installeren was met de @latest
richtlijn)
Dus ik heb bijvoorbeeld een pakket als dit geïnstalleerd:
npm install @ngtools/webpack@latest
En toen wilde ik het verwijderen, dus gebruikte ik hetzelfde commando (inclusief @latest):
npm uninstall @ngtools/webpack@latest
Dus de bovenstaande verwijdering werkte niet. Ik moet de @latest
verwijderen, en toen werkte het goed:
npm uninstall @ngtools/webpack
Antwoord 13
Bovendien, als u yarn
bent gaan gebruiken in plaats van npm
:
yarn remove <package-name>
Is het equivalent van:
npm uninstall <package-name> --save
Dit zal
– verwijder het pakket uit package.json
, evenals
– verwijder het uit de node-modules
map van uw project
Antwoord 14
# Log in as root (might be required depending on install)
su -
# List all global packages
npm ls -g --depth=0
# List all local (project) packages
npm ls -p --depth=0
# Remove all global packages
npm ls -g --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -g rm
# Remove all local packges
npm ls -p --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -p rm
# NOTE (optional): to use node with sudo you can add the bins to /usr/bin
# NOTE $PATHTONODEINSTALL is where node is installed (e.g. /usr/local/node)
sudo ln -s $PATHTONODEINSTALL/bin/node /usr/bin/node
sudo ln -s $PATHTONODEINSTALL/bin/npm /usr/bin/npm
Antwoord 15
De eenvoudigste oplossing is:
npm uninstall packageName --save-dev
Bekijk de namen van pakketten op het hoogste niveau in uw project:
npm list --depth=0
De uitvoer zal zijn als:
[email protected] /home/jackkobec/projects/myAppName
├── packageName@packageVersion
├── [email protected]
Kopieer de pakketnaam en voer de opdracht npm uninstall uit. Voorbeeld voor exprespakket:
npm uninstall express --save-dev
Antwoord 16
De Node.js-module verwijderen:
npm uninstall <module_name>
Hiermee wordt de module verwijderd uit de map node_modules, maar niet uit het bestand package.json.
Verwijder de module uit package.jsongebruik door deze opdracht te gebruiken:
npm uninstall <module_name> --save
Dit verwijdert het ook uit package.json.
Antwoord 17
In npm v6+
npm uninstall <package_name>
verwijdert het zowel in de map node_modulesals in het bestand pakket.json.
Antwoord 18
Gebruik
npm uninstall <package_name>
Voorbeeld om Express
te verwijderen
npm uninstall express
19
Als u op Windows bent, voert u CMD uit als beheerder en type:
npm -g uninstall <package name>
20
U kunt handmatig een Node.js-module verwijderen. Voor Windows,
-
Ga naar de
node_modules
Directory van uw repository. -
Verwijder de Node.js-module die u niet wilt.
-
Vergeet niet om de verwijzing naar de module in uw -pakket te verwijderen.json -bestand! Uw project kan nog steeds met de referentie worden uitgevoerd, maar u krijgt mogelijk een foutmelding. U wilt ook niet ongebruikte referenties achterlaten in uw -pakket.json -bestand dat later verwarring kan veroorzaken.
21
npm uninstall <package_name>
22
Alias kan worden gebruikt om Node_Modules-pakket
te verwijderen
un
ALIAS VOOR uninstall
- Verwijdert een enkel pakket
- npm un <PACKAGE_NAME>
- Verwijdert meerdere pakketten door ruimte toe te voegen tussen pakkettennamen
- npm un <PACKAGE_NAME_1> <PACKAGE_NAME_2>