Jak powszechnie wiadomo, każdy moduł npm można zainstalować poprzez uruchomienie prostego polecenia: npm install <module_name>
.
Zainstalowałem kilka modułów, których już nie używam i chcę je po prostu usunąć. Mam kilka pytań na ten temat:
Czy mamy jakieś polecenie lub proces, aby odinstalować moduł z katalogu głównego (coś podobnego
npm uninstall <module_name>
), czy po prostu usuniemy pliki modułu?Jak to wpływa na nas, jeśli zachowamy nieużywane moduły?
Odpowiedzi:
Polecenie jest po prostu
npm uninstall <name>
Dokumenty Node.js https://npmjs.org/doc/ zawierają wszystkie polecenia, które musisz znać w npm.
Instalacja lokalna będzie w
node_modules/
katalogu twojej aplikacji. Nie wpłynie to na aplikację, jeśli moduł pozostanie tam bez odniesień do niego.Jeśli usuwasz pakiet globalny, wszystkie aplikacje, do których się on odwołuje, ulegną awarii.
Oto różne opcje:
npm uninstall <name>
usuwa moduł z,node_modules
ale nie aktualizujepackage.json
npm uninstall <name> --save
usuwa go także oddependencies
wpackage.json
npm uninstall <name> --save-dev
usuwa go także oddevDependencies
wpackage.json
npm uninstall -g <name> --save
usuwa również globalnieźródło
npm -g ls | grep -v 'npm@' | awk '/@/ {print $2}' | awk -F@ '{print $1}' | xargs npm -g rm
aby odinstalować wszystkie poprawnie zainstalowane moduły. jeśli jesteś w systemie Windows, musisz zainstalować Cygwin lub git, aby go uruchomićnpm uninstall <name>
usuwa moduł z node_modules, ale nie package.json. Czynpm uninstall <name> --save
również usunąć zależność z pliku package.json. Wykonaj,npm -g uninstall <name> --save
aby usunąć zależność globalnie.npm uninstall <name> now removes the module from both
package.json` andnode_modules
Jeśli to nie działa,
npm uninstall <module_name>
wypróbuj globalnie, pisząc-g
.Może po prostu musisz to zrobić jako superUser / administrator z
sudo npm uninstall <module_name>
.źródło
-g
jest pomocne, jeśli istniejenpm WARN uninstall
.Cóż, aby udzielić pełnej odpowiedzi na to pytanie, istnieją dwie metody : (na przykład nazywamy zainstalowany moduł jako moduł1)
Aby usunąć moduł1 bez zmiany pliku package.json:
npm uninstall module1
Aby usunąć moduł1 ze zmianą pliku package.json i usunięciem go z zależności w pakiecie.json:
npm uninstall --save module1
Uwaga: aby uprościć wyżej wymienione polecenia, możesz użyć -S zamiast --save i możesz użyć remove , rm , r , un , unlink zamiast odinstalować
źródło
Po prostu domyślnie instaluję rysik pod moim domowym katalogiem, więc po prostu
npm uninstall stylus
go odłączam, lub możesz wypróbowaćnpm rm <package_name>
.źródło
Aby odinstalować moduł węzła:
Spowoduje to usunięcie modułu z modułów node_modules, ale nie z pliku package.json. Więc kiedy wykonamy ponownie npm zainstaluj moduł.
Aby usunąć moduł z package.json, użyj:
Spowoduje to również usunięcie zależności z pliku package.json.
A jeśli chcesz odinstalować dowolny moduł globalny, którego możesz użyć:
Spowoduje to usunięcie zależności na całym świecie.
źródło
Aby usunąć pakiety
node_modules/
zbiorczo, możesz je również usunąćpackage.json
, zapisać, a następnie uruchomićnpm prune
na terminalu.Spowoduje to usunięcie tych pakietów, które istnieją w systemie plików, ale nie są używane / deklarowane
package.json
.PS> Jest to szczególnie przydatne w systemie Windows, ponieważ często mogą wystąpić problemy z niemożnością usunięcia niektórych plików z powodu „przekroczonego limitu długości ścieżki”.
źródło
Przekonałem się o tym na własnej skórze, nawet jeśli na pozór oczywiste.
Początkowo próbowałem zapętlić przez katalog node_modules działający
npm uninstall module-name
z prostą pętlą for w skrypcie. Odkryłem, że to nie zadziała, jeśli nazwiesz pełną ścieżkę, npdziałał, ale
nie działał.
źródło
Możesz także uruchomić następujące skrócone:
npm un packageName
lubnpm rm packageName
Uwaga: Dodaj
-g
na końcu polecenia, aby odinstalować pakiety globalne.źródło
Czasami
npm uninstall -g packageName
działa.W takim przypadku możesz usunąć pakiet ręcznie.
Na komputerze Mac przejdź do folderu
/usr/local/lib/node_modules
i usuń folder z żądanym pakietem. Otóż to. Za pomocą tego polecenia sprawdź listę globalnie zainstalowanych pakietównpm list -g --depth=0
źródło
Użytkownicy systemu Windows - jeśli chcesz usunąć wszystkie moduły węzłów zainstalowane jednocześnie:
Odinstaluje wszystkie moduły.
źródło
Zaktualizuj npm 5:
Od npm 5.0.0 , zainstalowane / odinstalowane moduły są domyślnie dodawane / usuwane, więc opcja --save nie jest już potrzebna.
biegać
na przykład:
Spowoduje to również usunięcie modułu z folderu node_modules i pliku package.json
źródło
Ta
uninstall
opcja nie działała dla mnie, gdy próbowałem użyć tego samego polecenia, którego użyłem podczas instalacji (ponieważ instalowałem przy użyciu@latest
dyrektywą)Na przykład zainstalowałem taki pakiet:
A potem chciałem go odinstalować, więc użyłem tego samego polecenia (w tym @latest)
Więc powyższe odinstalowanie nie działało, muszę usunąć
@latest
i wtedy działało dobrzemam nadzieję, że to pomoże
źródło
źródło
Najprostszym rozwiązaniem jest:
Zobacz nazwy pakietów wyższego poziomu w swoim projekcie:
Dane wyjściowe będą wyglądać następująco:
Skopiuj nazwę pakietu i uruchom polecenie odinstalowania npm. Przykład dla przesyłki ekspresowej:
źródło
Aby odinstalować moduł za pomocą npm, możesz użyć:
Ponadto, jeśli chcesz odinstalować i chcesz, aby zmiana została odzwierciedlona w pliku package.json, możesz użyć flagi --save, w następujący sposób:
A jeśli chcesz odinstalować moduł z devDependencies i chcesz, aby zmiana została odzwierciedlona w pakiecie.json, możesz użyć flagi -D, w następujący sposób:
źródło
Aby odinstalować moduł węzła:
Spowoduje to usunięcie modułu z modułów node_modules, ale nie z pliku package.json.
Usuń moduł z użycia package.json za pomocą tego polecenia:
Spowoduje to również usunięcie pliku package.json.
źródło
Dodatkowo, jeśli zacząłeś używać
yarn
, zamiastnpm
:yarn remove <package-name>
Jest odpowiednikiem:
npm uninstall <package-name> --save
Spowoduje to
- usunięcie pakietu
package.json
, a także- odinstalowanie go z
node-modules
folderu projektuźródło
Posługiwać się
Przykład odinstalowania ekspresowego
źródło
W przypadku systemu Windows uruchom CMD jako administrator i wpisz
npm -g uninstall <package name>
.źródło
Jeśli chcesz odinstalować kilka modułów, po prostu uruchom
npm uninstall
. Następnie przejdź dopackage.json
i usuń niechciany moduł stamtąd, a następnie po prostu uruchom polecenienpm install
. To powinno naprawić twój problem.źródło