I oktober 2022 udgav Node.js sin 19. version. Det kom seks måneder efter udgivelsen af Node.js v.18, som indeholdt betydelige opgraderinger såsom det oprindelige testløbermodul.
En bemærkelsesværdig funktion i Node.js 19 er den nye og eksperimentelle urtilstand. Dette giver dig mulighed for at foretage ændringer på din server uden at skulle genstarte den.
Før Node.js 19 var urtilstand kun mulig ved brug af tredjepartsbiblioteker. Lær, hvordan du bruger urtilstanden, og udforsk andre opdateringer til Node.js i version 19.
Nodes nye urtilstand
Node.js 19 introducerer det eksperimentelle --holde øje flag, som genstarter en Node.js-server når den registrerer ændringer i den angivne fil. Du kunne tidligere gøre dette ved at bruge et tredjepartsbibliotek kaldet nodemon, men opdateringen fjerner behovet for en afhængighed ved at tilføje dens funktionalitet til Node.js.
For at genstarte din Node.js-server ved hjælp af --holde øje flag, køre node kommando med --holde øje flag efterfulgt af navnet på den fil, du vil genstarte, når Node registrerer ændringer.
Betragt for eksempel denne kodeblok som en server.js fil:
// server.js
konst udtrykke = kræve("udtrykke");
konst app = express();
konst PORT = 6060;
app.lyt (PORT, () => konsol.log(`App lytter på port: ${PORT}`));
For at se denne fil for ændringer og genstarte serveren, når de opstår, skal du køre denne kommando på din terminal:
node --watch server
Kommandoen vil se din server.js-fil og genstarte Node.js-serveren, når den registrerer ændringer foretaget i filen.
Det er værd at bemærke, at denne funktion stadig er eksperimentel, hvilket betyder, at du kan opleve problemer, mens du bruger --holde øje flag for at genstarte din server.
Andre opgraderinger og rettelser
Andre forbedringer og rettelser, der fulgte med Node.js 19, inkluderer følgende.
HTTP Keep-Alive som standard
Det http/https moduler holde i live option styrer, om den skal bevare forbindelsen til en server, efter den har gennemført en anmodning. Oprindeligt skulle du indstille holde i live mulighed for at rigtigt manuelt. Denne indstilling instruerer serveren om at holde forbindelsen åben og genbruge den til efterfølgende anmodninger.
I Node.js 19 er holde i live indstilling er som standard sat til sand. Denne tilføjelse vil reducere omkostningerne ved etablering af nye forbindelser markant.
Stabilisering af WebCrypto API
WebCrypto API er Node.js’ implementering af Web Crypto API-standarden. Med Node.js 19 er WebCrypto-implementeringen nu stabil, bortset fra Ed25519, Ed448, X25519, og X448 algoritmer.
Du kan få adgang til denne API ved hjælp af globalt dette modul eller node: præfiks det Node.js 18 introduceret at differentiere kerne Node.js-moduler fra tredjepartsbiblioteker.
For eksempel:
// node: præfiks
konst krypto = kræve("node: krypto");
// globalThis
konst webkrypt = globalThis.crypto;
Tilpassede ESM-opløsningsjusteringer
Node.js 19 fjerner den tidligere eksperimentelle --eksperimentel-specifikationsopløsning flag. Dette gav eksperimentel støtte til at lokalisere filer ved hjælp af pakkespecifikationer, svarende til hvordan ECMAScript importerer moduler.
Node.js fjernede dette flag, fordi du kan replikere deres funktionalitet ved hjælp af brugerdefinerede indlæsere. Du kan bruge brugerdefinerede indlæsere til at understøtte flere modulformater eller til at behandle moduler yderligere før indlæsning, da de lader dig give din unikke logik til indlæsning og behandling af moduler.
Fjernelse af DTrace/SystemTap/ETW Support
DTrace, SystemTap og ETW (Event Tracing for Windows) er moduler, der tilbyder dynamisk sporing og analyse af kørende programmer. Oprindeligt i Node.js kunne du bruge dem til at indsamle data om en applikations aktivitet, herunder ydeevneindikatorer, fejl og andre mulige runtime-forekomster.
I Node.js 19 fjernede Node.js understøttelse af DTrace, SystemTap og ETW, fordi kompleksiteten involveret i at vedligeholde og holde disse moduler opdaterede endnu ikke har været det værd. Så for at prioritere deres ressourcer droppede de støtten til dem.
Opgradering til Node.js 19
Node.js 19 introducerer forskellige funktioner og forbedringer, der er værd at overveje til din applikation, inklusive den nye urtilstand, blandt andre diskuteret ovenfor. For at opgradere til Node.js 19 skal du gå til det officielle websted og downloade den aktuelle version.