Nodemon yra komandų eilutės sąsajos įrankis, padedantis kurti Node.js programas dinamiškai iš naujo paleidžiant mazgo programą, kai ji nustato failo pakeitimus kataloge.
Šiame straipsnyje sužinosite, kaip įdiegti ir sukonfigūruoti mazgą, kad jis atitiktų jūsų konkrečius poreikius, taip pat išnagrinės dažną klaidą, atsirandančią naudojant mazgą.
Kodėl turėtumėte naudoti „Nodemon“.
Kurdami žiniatinklio serverius ar pagrindines programas, turite pakeisti savo kodą, kad galėtumėte tvarkyti klaidas ir pagerinti programos struktūrą bei logiką.
Nodemon padeda automatiškai iš naujo paleisti serverį, kai keičiate jo kodą. Tai padeda sutaupyti laiko ir lengviau derinti.
Kaip įdiegti Nodemon
„Nodemon“ galite įdiegti lokaliai kaip kūrimo priklausomybę arba globaliai sistemos kelyje.
Norėdami įdiegti nodemon visame pasaulyje, kompiuterio terminale paleiskite šią npm komandą:
npm install nodemon --globally
Norėdami įdiegti nodemoną vietoje, savo terminalo projekto kataloge turėtumėte paleisti šią npm komandą:
npm įdiegti nodemon --save-dev
„Nodemon“ paleidimas jūsų žiniatinklio serverio programoje
Paleisti nodemoną ir priversti jį žiūrėti žiniatinklio serverio programą apima kelis veiksmus. Toliau pateiktas kodo blokas yra pagrindinis serverio, kuris registruoja eilutės pranešimą į konsolę, scenarijus:
// app.js
konst išreikšti = reikalauti("išreikšti");
konst programa = express ();
app.listen((5000), ()=>{
konsolė.log("Aš mokausi apie nodemoną".)
});
Norėdami pradėti žiūrėti šį scenarijų, paleiskite komandą nodemon ir failo, kurį jis turėtų žiūrėti, pavadinimą:
nodemon app.js
Gautoje išvestyje turėtų būti kažkas panašaus į šį tekstą:
[nodemon] pradedant „node app.js“.
Aš mokausi apie nodemoną
Sėkmingai paleidus nodemoną, visi pakeitimai bus atlikti app.js failas iš naujo įkels visą serverio programą.
Iš nodemono galite išeiti paspausdami Ctrl + C savo kompiuterio terminale. Taip pat galite iš naujo paleisti mazgo procesą rankiniu būdu įvesdami rs komandą.
Nodemon naudojimas su komandų eilutės parinktimis
Nodemon turi keletą komandų eilutės parinkčių, kurias galite naudoti norėdami pakeisti jo elgesį.
Norėdami pamatyti visų galimų mazgo parinkčių ir jų funkcijų sąrašą, paleiskite šią komandą:
nodemon – pagalbos parinktys
Tarp daugelio galimų variantų yra;
-
--delsimas: Kai failas pasikeičia, mazgas pagal numatytuosius nustatymus laukia sekundės prieš paleisdamas procesą iš naujo. Galite nurodyti kitą delsą naudodami --delsimas jungiklis. Galite pasirinkti, kiek laiko mazgas lauks prieš paleisdamas iš naujo. Pavyzdžiui:
nodemon --delay five app.js
-
-- ignoruoti: Ignoravimo jungiklio parinktis leidžia ignoruoti konkrečius failus žiniatinklio serverio programoje. Galite naudoti perjungimo parinktį taip:
nodemon – ignoruoti lib/app.js
-
-- žiūrėti: Pagal numatytuosius nustatymus, kai veikia, nodemon stebi esamą darbo katalogą. Norėdami valdyti šią parinktį, naudokite --žiūrėti galimybė pridėti konkrečius failų kelius ir pakeisti, koks katalogas yra stebimas. Pavyzdžiui, stebėti serverio katalogą:
nodemon -- žiūrėjimo serveris
-
--vykd: Nors tai yra „JavaScript“ programa, „Nodemon“ taip pat galite žiūrėti ne „JavaScript“ failus, pvz., „TypeScript“, „Python“ ir „Golang“. Galite naudoti --vykdytojas galimybė gauti „Nodemon“ automatinio perkrovimo funkciją tokiuose scenarijuose. Pavyzdžiui, naudojant mazgą „TypeScript“ scenarijuje:
nodemon --exec ts-node
-
--išor: „Nodemon“ pagal numatytuosius nustatymus ieško failų su „JavaScript“, „TypeScript“, „CoffeeScript“ ir JSON plėtiniais. Tai yra, nes Node.js projektai gali veikti su TypeScript ir CoffeeScript failai, kurie prieš paleidžiant sukompiliuojami į gryną „JavaScript“. Kita vertus, JSON failai taip pat stebimi, nes jie dažnai naudojami Node.js projektų metaduomenims saugoti. Galite naudoti -e (arba --ext) jungiklį, kad nurodytumėte kableliais atskirtą failų sąrašą, kurį norite peržiūrėti. Pavyzdžiui, norint stebėti failus su plėtiniais .js, .json, ir .mjs:
nodemon -- ext js, json, mjs
„Nodemon“ konfigūracijos failų naudojimas
Nodemon palaiko vietinius ir pasaulinius konfigūracijos failus. Juos galite rasti savo namų kataloge arba projekto šakniniame kataloge; jie paprastai vadinami nodemon.json failus. Tokiu būdu galite išsaugoti mazgo konfigūracijas ir lengvai jas pakartotinai panaudoti su kitais projektais.
Komandinės eilutės parinktys visada nepaisys konfigūracijos failo parametrų. Darbo prioritetų tvarka apima komandų eilutės parinktis, vietinius ir konfigūracijos failus.
Konfigūracijos failas gali naudoti bet kurią komandų eilutės parinktį kaip JSON rakto reikšmę.
Pavyzdžiui:
{
"žiūrėti": [ "serveris" ],
"išorinis": [ "js", "ts", "json" ],
"delsimas": "5000",
"ignoruoti": [ "lib/app.js" ]
}
Aukščiau nodemon.json failas, mazgas nustatytas žiūrėti serveris kataloge, nurodykite failus su .js, .ts, ir .json pratęsimai, uždelsimas 5 sekundės prieš paleisdami iš naujo po failo pakeitimų ir galiausiai nepaisykite failo pakeitimų lib/app.js.
Kaip alternatyva, nodemon palaiko naudojimą package.json konfigūracijai, jei visas paketo konfigūracijas laikote vienoje vietoje. Pagal nodemonConfig faile package.json nurodykite konfigūraciją tokiu pat formatu, kaip ir konfigūracijos faile.
Pavyzdžiui, šiame pakete.json faile yra tokia pati konfigūracija, kaip ir anksčiau pateiktame faile nodemon.json:
{
"vardas": "nodemonas",
"versija": "",
"apibūdinimas": "",
"nodemonConfig": {
"žiūrėti": [
"serveris"
],
"išorinis": [ "js", "ts", "json" ],
"delsimas": "5",
"ignoruoti": [
"lib/app.js"
]
}
}
„Nodemon“ klaidų tvarkymas
Kurdami programą turėsite tai padaryti tvarkyti JavaScrip klaidast pakeliui. Norėdami išspręsti šias klaidas, pirmiausia turite žinoti, kodėl jos atsiranda.
Štai dažna klaida, su kuria galite susidurti dirbdami su nodemonu:
[nodemon] programa sudužo – laukiama failo pakeitimų prieš pradedant...
Yra keletas priežasčių, kodėl gali atsirasti šis klaidos pranešimas, ir keli būdai jas pašalinti.
- Neteisinga „JavaScript“ sintaksė failuose, kuriuos stebi mazgas. Norėdami išvengti šios klaidos, peržiūrėkite „JavaScript“ kodą, kad nustatytumėte visas jame esančias sintaksės klaidas.
- Kelių užduočių vykdymas fone gali trukdyti šiai konkrečiai užduočiai. Pabandykite sustabdyti visus foninius procesus ir paleisti programą dar kartą, kad tai išspręstumėte.
- Neteisingas katalogų organizavimas taip pat gali sukelti problemų. Pavyzdžiui, failų app.js ir package.json nėra tame pačiame kataloge. Įsitikinkite, kad katalogą sudarote tinkamai, kad jis nepakenktų jūsų programų veikimui.
Jaučiatės patogiai su Nodemon
Matėte nodemon naudingumą ir tai, kaip jis gali sukurti geresnę darbo eigą, sumažinti klaidų skaičių ir greičiau bei lengviau derinti.
Tačiau dirbant su nodemonu vis tiek gali atsirasti klaidų. Kaip kūrėjui svarbu išmokti pašalinti šias klaidas.