Praca z Nodemonem, monitorem Node.js
Nodemon to narzędzie interfejsu wiersza polecenia, które pomaga w tworzeniu aplikacji Node.js poprzez dynamiczne ponowne uruchamianie aplikacji węzła, gdy wykryje ona zmiany plików w katalogu.
W tym artykule dowiesz się, jak zainstalować i skonfigurować nodemon do własnych potrzeb, a także poznasz typowy błąd występujący podczas korzystania z nodemon
Dlaczego warto używać Nodemona
Tworząc serwery internetowe lub aplikacje zaplecza, musisz zmienić swój kod, aby obsłużyć błędy i poprawić strukturę i logikę swojego programu.
Nodemon pomaga, automatycznie uruchamiając ponownie serwer po wprowadzeniu zmian w jego kodzie. Pomaga to zaoszczędzić czas i ułatwia debugowanie.
Jak zainstalować Nodemona
Możesz zainstalować Nodemon lokalnie jako zależność programistyczną lub globalnie w ścieżce systemowej.
Aby zainstalować nodemon globalnie, uruchom następujące polecenie npm w terminalu komputera:
npm install nodemon --globally
Aby zainstalować nodemon lokalnie, powinieneś uruchomić następującą komendę npm w katalogu projektu w swoim terminalu:
npm install nodemon --save-dev
Uruchamianie Nodemona w Twojej aplikacji serwera WWW
Uruchomienie nodemona i sprawienie, by obserwował aplikację serwera WWW, obejmuje kilka kroków. Poniższy blok kodu jest podstawowym skryptem dla serwera, który rejestruje ciąg znaków w konsoli:
// app.js
const express = require('express');
const app = express();
app.listen((5000), ()=>{
console.log(`I'm learning about nodemon`)
});
Aby rozpocząć oglądanie tego skryptu, uruchom polecenie nodemon, a następnie nazwę pliku, który powinien obserwować:
nodemon app.js
Wynikowy wynik powinien zawierać coś w rodzaju następującego tekstu:
[nodemon] starting `node app.js`
I'm learning about nodemon
Po pomyślnym uruchomieniu nodemon wszelkie zmiany w pliku app.js spowodują ponowne załadowanie całej aplikacji serwera.
Możesz wyjść z nodemon, naciskając Ctrl + C w terminalu komputera. Możesz także ręcznie zrestartować proces nodemon, wprowadzając polecenie rs .
Używanie Nodemona z opcjami wiersza poleceń
Nodemon ma kilka opcji wiersza poleceń, których można użyć do modyfikacji jego zachowania.
Aby zobaczyć listę wszystkich dostępnych opcji nodemon i ich funkcji, uruchom to polecenie:
nodemon --help options
Wśród wielu dostępnych opcji są;
- –delay : Gdy plik się zmienia, nodemon domyślnie czeka sekundę przed ponownym uruchomieniem procesu. Możesz określić inne opóźnienie za pomocą przełącznika — opóźnienia . Możesz wybrać czas, przez jaki nodemon będzie czekał przed ponownym uruchomieniem. Na przykład:
nodemon --delay five app.js
- –ignore : Opcja ignorowania przełączania umożliwia ignorowanie określonych plików w aplikacji serwera WWW. Możesz użyć opcji przełączania w następujący sposób:
nodemon --ignore lib/app.js
- –watch : Domyślnie podczas działania nodemon monitoruje bieżący katalog roboczy. Aby przejąć kontrolę nad tą opcją, użyj opcji — oglądaj , aby dodać określone ścieżki do plików i zmienić obserwowany katalog. Na przykład monitorowanie katalogu serwera:
nodemon --watch server
- –exec : Chociaż jest to narzędzie JavaScript, możesz także używać Nodemon do oglądania plików innych niż JavaScript, takich jak TypeScript, Python i Golang. Możesz użyć opcji — exec , aby uzyskać funkcję automatycznego przeładowania nodemon w takich skryptach. Na przykład użycie nodemon w skrypcie TypeScript:
nodemon --exec ts-node
- –ext : domyślnie Nodemon wyszukuje pliki z rozszerzeniami JavaScript, TypeScript, CoffeeScript i JSON. Dzieje się tak, ponieważ projekty Node.js mogą pracować z plikami TypeScript i CoffeeScript, które przed wykonaniem kompilują się do czystego JavaScript. Z drugiej strony pliki JSON są również monitorowane, ponieważ często służą do przechowywania metadanych dla projektów Node.js. Możesz użyć przełącznika – e (lub — ext ), aby określić oddzieloną przecinkami listę plików do oglądania. Na przykład, aby monitorować pliki z rozszerzeniami .js , .json i .mjs :
nodemon --ext js,json,mjs
Używanie plików konfiguracyjnych Nodemona
Nodemon obsługuje lokalne i globalne pliki konfiguracyjne. Możesz je znaleźć w swoim katalogu domowym lub katalogu głównym projektu; są one zazwyczaj nazywane plikami nodemon.json . W ten sposób możesz zapisać konfiguracje nodemon i łatwo użyć ich ponownie w innych projektach.
Opcje wiersza poleceń zawsze zastąpią ustawienia pliku konfiguracyjnego. Kolejność priorytetów roboczych obejmuje opcje wiersza poleceń, pliki lokalne i konfiguracyjne.
Plik konfiguracyjny może używać dowolnej opcji wiersza poleceń jako wartości klucza JSON.
Na przykład:
{
"watch": [ "server" ],
"ext": [ "js", "ts", "json" ],
"delay": "5000",
"ignore": [ "lib/app.js" ]
}
W powyższym pliku nodemon.json , nodemon jest ustawiony na obserwowanie katalogu serwera , określanie plików z rozszerzeniami .js , .ts i .json , opóźnienie przez 5 sekund przed ponownym uruchomieniem po zmianach w plikach i wreszcie ignorowanie zmian plików w lib/app .js.
Jako alternatywę, nodemon obsługuje użycie pliku package.json do konfiguracji, jeśli przechowujesz wszystkie konfiguracje pakietów w jednym miejscu. W obszarze nodemonConfig w pliku package.json określ konfigurację w takim samym formacie, jak w przypadku pliku konfiguracji.
Na przykład ten plik package.json zawiera taką samą konfigurację jak powyższy plik nodemon.json:
{
"name": "nodemon",
"version": "",
"description": "",
"nodemonConfig": {
"watch": [
"server"
],
"ext": [ "js", "ts", "json" ],
"delay": "5",
"ignore": [
"lib/app.js"
]
}
}
Obsługa błędów Nodemona
Podczas tworzenia aplikacji będziesz musiał radzić sobie z błędami w języku JavaScript. Aby poradzić sobie z tymi błędami, musisz najpierw wiedzieć, dlaczego się zdarzają.
Oto typowy błąd, który można napotkać podczas pracy z nodemonem:
[nodemon] app crashed - waiting for file changes before starting...
Istnieje kilka powodów, dla których może wystąpić ten komunikat o błędzie, oraz kilka sposobów usunięcia przyczyn.
- Nieprawidłowa składnia JavaScript w plikach obserwowanych przez nodemon. Aby zapobiec temu błędowi, przejrzyj swój kod JavaScript, aby zidentyfikować występujące w nim błędy składniowe.
- Uruchamianie wielu zadań w tle może kolidować z tym konkretnym zadaniem. Spróbuj zatrzymać wszystkie procesy w tle i ponownie uruchomić program, aby rozwiązać ten problem.
- Niewłaściwa organizacja katalogów może również powodować problemy. Na przykład brak plików app.js i package.json w tym samym katalogu. Upewnij się, że masz odpowiednią strukturę katalogu, tak aby nie wpływał on na działanie twoich programów.
Przyzwyczajenie się do Nodemon
Widziałeś przydatność nodemon i sposób, w jaki może on stworzyć lepszy przepływ pracy, zmniejszyć liczbę błędów oraz przyspieszyć i ułatwić debugowanie.
Jednak podczas pracy z nodemonem nadal mogą wystąpić błędy. Jako programista ważne jest, aby dowiedzieć się, jak rozwiązywać problemy z tymi błędami.
Dodaj komentarz