Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

Nodemon är ett kommandoradsgränssnittsverktyg som hjälper till att bygga Node.js-appar genom att dynamiskt starta om nodapplikationen när den identifierar filändringar i katalogen.

Den här artikeln kommer att lära dig hur du installerar och konfigurerar nodemon för att passa dina specifika behov, samt utforskar ett vanligt fel som uppstår när du använder nodemon

Varför du bör använda Nodemon

När du utvecklar webbservrar eller backend-appar måste du ändra din kod för att hantera fel och förbättra strukturen och logiken i ditt program.

Nodemon hjälper till att automatiskt starta om en server när du gör ändringar i dess kod. Detta hjälper till att spara tid och möjliggör enklare felsökning.

Hur man installerar Nodemon

Du kan installera Nodemon antingen lokalt som ett utvecklingsberoende eller globalt på systemvägen.

För att installera nodemon globalt, kör följande npm-kommando i din dators terminal:

instagram viewer
npm installera nodemon --globalt 

För att installera nodemon lokalt bör du köra följande npm-kommando i din projektkatalog i din terminal:

npm installera nodemon --save-dev

Starta Nodemon i din webbserverapplikation

Att starta nodemon och få den att titta på din webbserverapplikation kräver några steg. Kodblocket nedan är ett grundläggande skript för en server som loggar ett strängmeddelande till konsolen:

// app.js
konst uttrycka = behöva('uttrycka');
konst app = express();

app.lyssna((5000), ()=>{
trösta.logga(`Jag lär mig om nodemon`)
});

För att börja titta på det här skriptet, kör kommandot nodemon följt av namnet på filen det ska titta på:

nodemon app.js

Den resulterande utdata bör innehålla något i stil med följande text:

[nodemon] som startar "node app.js".
Jag lär mig om nodemon

När nodemon har startat framgångsrikt, kan eventuella ändringar av app.js filen kommer att orsaka en omladdning till hela serverappen.

Du kan lämna nodemon genom att slå Ctrl + C i din dators terminal. Du kan också starta om nodemonprocessen manuellt genom att ange rs kommando.

Använda Nodemon med kommandoradsalternativ

Nodemon har flera kommandoradsalternativ som du kan använda för att ändra dess beteende.

För att se en lista över alla tillgängliga nodemonalternativ och deras funktioner, kör det här kommandot:

nodemon --hjälpalternativ

Bland de många tillgängliga alternativen är;

  • --dröjsmål: När en fil ändras, väntar nodemon en sekund som standard innan den startar om processen. Du kan ange en annan fördröjning med --dröjsmål växla. Du kan välja hur lång tid som nodemon ska vänta innan den startas om. Till exempel:
    nodemon --delay fem app.js
  • --ignorera: Alternativet ignorera byte låter dig ignorera specifika filer i din webbserverapplikation. Du kan använda växlingsalternativet så här:
    nodemon --ignore lib/app.js
  • --Kolla på: Som standard, när den körs, övervakar nodemon den aktuella arbetskatalogen. För att ta kontroll över det alternativet, använd --Kolla på alternativ för att lägga till specifika filsökvägar och ändra vilken katalog som övervakas. Till exempel, övervaka en serverkatalog:
    nodemon --watch server
  • --exec: Även om det är ett JavaScript-verktyg kan du också använda Nodemon för att titta på icke-JavaScript-filer som TypeScript, Python och Golang. Du kan använda --exec alternativet för att få nodemons automatiska omladdningsfunktion i sådana skript. Om du till exempel använder nodemon i ett TypeScript-skript:
    nodemon --exec ts-nod
  • --ext: Nodemon söker som standard efter filer med JavaScript-, TypeScript-, CoffeeScript- och JSON-tillägg. Det här är för att Node.js-projekt kan fungera med TypeScript och CoffeeScript-filer som kompileras till rent JavaScript innan de körs. Å andra sidan övervakas JSON-filer också eftersom de ofta används för att lagra metadata för Node.js-projekt. Du kan använda -e (eller --ext) växla för att ange en kommaseparerad lista över filer att titta på. Till exempel för att övervaka filer med tillägg .js, .json, och .mjs:
    nodemon --ext js, json, mjs

Använda Nodemon-konfigurationsfiler

Nodemon stöder lokala och globala konfigurationsfiler. Du kan hitta dessa i din hemkatalog eller projektets rotkatalog; de kallas vanligtvis nodemon.json filer. På så sätt kan du spara dina nodemonkonfigurationer och enkelt återanvända dem med andra projekt.

Kommandoradsalternativ kommer alltid att åsidosätta konfigurationsfilens inställningar. Arbetsprioritetsordningen inkluderar kommandoradsalternativ, lokala filer och konfigurationsfiler.

En konfigurationsfil kan använda vilket kommandoradsalternativ som helst som ett JSON-nyckelvärde.

Till exempel:

{
"Kolla på": [ "server" ],
"ext": [ "js", "ts", "json" ],
"dröjsmål": "5000",
"ignorera": [ "lib/app.js" ]
}

I ovanstående nodemon.json fil, nodemon är inställd på att titta på server katalog, ange filer med .js, .ts, och .json förlängningar, fördröjning för 5 sekunder innan omstart efter filändringar, och slutligen ignorera filändringar i lib/app.js.

Som ett alternativ stöder nodemon att använda package.json för konfiguration om du håller alla paketkonfigurationer på en plats. Under nodemonConfig i filen package.json, ange konfigurationen i samma format som för en konfigurationsfil.

Till exempel innehåller den här filen package.json samma konfiguration som filen nodemon.json ovan:

{
"namn": "nodemon",
"version": "",
"beskrivning": "",
"nodemonConfig": {
"Kolla på": [
"server"
],
"ext": [ "js", "ts", "json" ],
"dröjsmål": "5",
"ignorera": [
"lib/app.js"
]
}
}

Hantera Nodemon-fel

När du utvecklar din app måste du göra det hantera fel i JavaScript längs vägen. För att hantera dessa fel måste du först veta varför de inträffar.

Här är ett vanligt fel som du kan stöta på när du arbetar med nodemon:

[nodemon]-appen kraschade - väntar på filändringar innan du startar...

Det finns flera anledningar till varför detta felmeddelande kan uppstå och flera sätt att åtgärda orsakerna.

  • Fel JavaScript-syntax i filerna som nodemon tittar på. För att förhindra detta fel, gå igenom din JavaScript-kod för att identifiera eventuella syntaxfel i den.
  • Att köra flera uppgifter i bakgrunden kan störa just den här uppgiften. Försök att stoppa alla bakgrundsprocesser och kör programmet igen för att fixa detta.
  • Felaktig katalogorganisation kan också orsaka problem. Till exempel att inte ha filerna app.js och package.json i samma katalog. Se till att du strukturerar din katalog ordentligt så att den inte påverkar körningen av dina program.

Bli bekväm med Nodemon

Du har sett nyttan med nodemon och hur den kan skapa ett bättre arbetsflöde, minska fel och göra felsökning snabbare och enklare.

Dock kan fel fortfarande uppstå när man arbetar med nodemon. Som utvecklare är det viktigt att lära sig hur man felsöker dessa fel.