Dodawanie pakietów do projektu Node.js
Plik Node.js zawiera wbudowane pakiety dla zadań, takich jak zarządzanie plikami i obsługa protokołu HTTP. Ale istnieje również ogromna tablica pakietów innych firm oferowanych w rejestrze NPM.
Kiedy i jak wybrać pakiet npm
Jako nowy deweloper w firmie Tailwind Traders musisz dodać funkcje do projektu. Możesz napisać kod samodzielnie, ale decydujesz się na użycie istniejącego pakietu. Ta decyzja programowa jest typowym scenariuszem.
Kiedy należy użyć istniejącego pakietu? Oto kilka czynników, które należy wziąć pod uwagę:
- Jakość: W przypadku zadań, takich jak zabezpieczenia, korzystanie z dobrze ustalonych pakietów gwarantuje, że stosujesz najlepsze rozwiązania i obsługujesz przypadki brzegowe.
- Wydajność: Pisanie własnego kodu zajmuje trochę czasu. Korzystanie z istniejących pakietów pozwala zaoszczędzić znaczne nakłady pracy.
- Konserwacja: Biblioteki wymagają aktualizacji i poprawek błędów. Często wydajniejsze jest, aby umożliwić zespołowi open source obsługę tego rozwiązania.
Deweloperzy mogą znajdować i pobierać pakiety z różnych źródeł, takich jak:
- Rejestry: Rejestry to kolekcje pakietów, takich jak rejestr npm. Możesz również hostować własny rejestr.
- Repozytoria: pakiety można instalować bezpośrednio z adresu URL usługi GitHub.
- Pliki: pakiety można instalować z folderu lokalnego lub spakowanego pliku, co jest przydatne do testowania własnych pakietów.
- Katalogi: można również zainstalować bezpośrednio z katalogu.
Po wybraniu pakietu sprawdź jego zależności, aby wziąć pod uwagę następujące czynniki:
- Rozmiar: Więcej zależności oznacza większy ślad. Rozmiar śladu ma znaczenie, jeśli masz ograniczenia przepustowości lub sprzętu. Pamiętaj, że zainstalowanie pakietu również instaluje jego zależności. Może to spowodować powstanie dużego folderu node_modules.
- Popularność: Popularność pakietu może wskazywać na jego jakość.
- Licencjonowanie: Jeśli planujesz sprzedawać oprogramowanie, upewnij się, że wszystkie licencje pakietów zależności zezwalają na ponowne użycie i odsprzedaż.
- Aktywna konserwacja: unikaj zależności, które są przestarzałe lub rzadko aktualizowane.
Aby dowiedzieć się więcej o pakiecie, odwiedź stronę pakietu w witrynie NPM i repozytorium GitHub. Możesz również użyć polecenia npm: npm view <package name>
.
Jak zainstalować pakiet
Aby zainstalować pakiet, użyj interfejsu wiersza polecenia npm zainstalowanego w środowisku Node.js. Pakiet można dodać do projektu Node.js za npm install
pomocą polecenia w terminalu.
npm install <name of package>
Po uruchomieniu install
polecenia narzędzie wiersza polecenia łączy się z rejestrem globalnym, pobiera kod i umieszcza go w node_modules
folderze głównym projektu.
Oto niektóre typowe przełączniki polecenia instalacji:
- W przypadku pakietów przeznaczonych tylko do programowania użyj polecenia
--save-dev
. Ten przełącznik zapisuje wartość wedevDependencies
właściwościpackage.json
. Te zależności są zwykle formatem, lintą, kompilacją, transpilem i narzędziami do testowania. - W przypadku pakietów tylko do produkcji użyj polecenia
--production
. Ten przełącznik wyklucza pakiety tylko programistyczne. - W przypadku dostępnych globalnie narzędzi użyj polecenia
-g
. Narzędzia wiersza polecenia są często instalowane globalnie zamiast importowane do projektów. Zależności globalne są instalowane w katalogu obejmującym cały system, a nie w proejct-levelnode_modules
. Jednak pakiety globalne mogą zaśmiecać system. Polecenienpx
rozwiązuje ten problem, tymczasowo instalując pakiety. Użyjnpx <name>
polecenia , aby pobrać pakiet, uruchomić go, a następnie usunąć go.
Po zakończeniu instalacji katalog projektu wygląda następująco:
package.json
node_modules/
<name of dependency>/
<files included in the dependency>
src
index.js
Polecenia interfejsu wiersza polecenia narzędzia npm
Narzędzie wiersza polecenia npm zawiera sporo poleceń ułatwiających wykonywanie zadań, takich jak instalowanie pakietów, tworzenie pakietów i inicjowanie projektów Node.js.
Polecenia NPM dzielą się na kategorie:
- Zarządzanie zależnościami: polecenia służące do instalowania, aktualizowania i usuwania pakietów.
- Uruchamianie skryptów: polecenia do zarządzania przepływami projektowymi, takimi jak testowanie i kompilowanie kodu.
- Konfigurowanie środowiska: polecenia służące do konfigurowania ścieżek instalacji i źródeł pakietów.
- Tworzenie i publikowanie pakietów: polecenia do tworzenia i publikowania pakietów.
Jeśli chcesz uzyskać szczegółową listę wszystkich poleceń, wprowadź następujące polecenie w terminalu:
npm --help
Sprawdzanie instalacji
Aby zobaczyć, co znajduje się w package.json
folderze, użyj polecenia npm list
. Polecenie npm list
wyświetla listę wszystkich pakietów w node_modules
katalogu, które zostały zainstalowane. Każdy zainstalowany pakiet zainstalował wszystkie jego własne zależności.
list
Ponieważ polecenie może spowodować długą listę, co utrudnia zrozumienie, można wyświetlić listę pakietów w różnych głębiach za pomocą polecenia listy. Na głębokości 0
polecenie zwraca listę tej samej zawartości, którą można znaleźć w sekcji dependencies
w pliku package.json.
npm list --depth=<depth>
Jeśli zainstalowano pakiet Jest, npm list --depth=0
generuje dane wyjściowe podobne do tych danych wyjściowych:
├── jest@26.0.1
Czyszczenie zależności
Jeśli nie potrzebujesz już pakietu, usuń go. Usunięcie zależności powoduje, że projekt jest czysty i oszczędza miejsce. To czyszczenie jest szczególnie ważne w przypadku aplikacji jednostronicowych (SPA), takich jak Angular, React lub Vue. Te aplikacje łączą i kompresują kod do pliku obsługiwanego w przeglądarce. Większy plik, tym dłużej trwa ładowanie, co może zniechęcać użytkowników.
Istnieją dwa sposoby czyszczenia zależności, które nie są już potrzebne:
- Odinstaluj: Aby odinstalować pakiet, uruchom polecenie
npm uninstall <name of dependency>
. To polecenie usuwa pakiet z pliku manifestupackage.json
i z folderu node_modules. - Prune: użyj polecenia
npm prune
, aby usunąć wszystkie nieznajdające się na liście zależności z programunode_modules
. Oczyszczanie jest przydatne, gdy chcesz usunąć wiele zależności bez uruchamiania odinstalowywania dla każdego z nich. Aby przycinać:- Usuń wpisy z zależności lub metodyki devDependencies w pliku
package.json
. run npm prune
.
- Usuń wpisy z zależności lub metodyki devDependencies w pliku