Hvordan navigerer man i filstier i NodeJs?

Hvordan Navigerer Man I Filstier I Nodejs



At finde den nøjagtige sti til filen er meget afgørende, især under oprettelsen af ​​nye mapper eller sletning af mapperne. For at skabe komplekse og moderne webapplikationer er hele koden opdelt i flere bidder, som derefter gemmes i forskellige filer.

Men at hente filerne fra disse mapper og inkludere dem i hovedfilen er en meget vanskelig og tidskrævende opgave. Heldigvis! NodeJs tilbyder et par variabler, der kan bruges til at hente den absolutte sti til det angivne bibliotek eller filen.

Denne blog vil forklare proceduren for at navigere filstier i Node.js.







Hvordan navigerer man i filstier i NodeJs?

At kende den korrekte sti til filen eller mappen er den vigtigste opgave. Ellers kan hele webapplikationen gå ned eller ikke give det ønskede resultat, hvis nogen af ​​dens filstier ikke er korrekte. Der er to variabler og en metode leveret af node.js, som kan bruges specifikt til at returnere stien til en valgt fil, mappe eller rodmappe. Disse er beskrevet nedenfor sammen med den korrekte implementeringsprocedure:



Metode 1: Naviger i mappestien i Node.js ved hjælp af '__dirname'-variablen

Det ' __dirnavn ” variabel leveret af Nodejs har standardfunktionaliteten til at hente den aktuelle mappesti, hvori scriptet eller filen, der udføres, ligger. I vores tilfælde er ' app.js ” placeres inde i projektmappen med navnet “readlineProj”. Så denne variabel returnerer den absolutte sti for at finde ' readlineProj ”. Den enkelte kodelinje vises som:



konsol. log ( 'Den aktuelle projektmappe har en sti til: ' , __dirnavn ) ;

For at udføre dette 'app.js' fil, skal du udføre ' node kommando hvor filnavnet er ' app ”:





node app

Outputtet viser, at stien til den nødvendige aktuelle mappe er blevet hentet:



Metode 2: Naviger i filstien i Node.js ved hjælp af '__filename'-variablen

For at navigere i den aktuelle filsti, som udvikleren i øjeblikket arbejder på, skal den foruddefinerede variabel ' __filnavn ' anvendes. Denne variabel henter den aktuelle fils absolutte sti, som kan vises over konsollen eller kan gemmes i enhver anden variabel til videre behandling. Dens implementering er vist i nedenstående kodelinje:

konsol. log ( 'Den aktuelle fil har en sti til: ' , __filnavn ) ;

Udfør nu den indeholdende fil ved at bruge den samme kommando som beskrevet i ovenstående afsnit:

node app

Nedenstående output viser, at den absolutte sti for den aktuelle fil 'app.js' er blevet hentet:

Metode 3: Naviger i rodkatalogstien ved hjælp af 'process.cwd()'-variablen

Der er en enkelt metode af Node.js, der påkaldes eller kaldes langs ' behandle ” egenskab for at returnere den absolutte sti til den aktuelle arbejdsmappe. Enkelt sagt hentes den direkte, der udføres af Node.js ved at tildele ' cwd() ' metode ved siden af ​​' behandle ” ejendom:

konsol. log ( ' \n Naviger til den aktuelt fungerende mappe: ' + behandle. cwd ( ) ) ;

Ved at bruge den kan stien til rodbiblioteket for den aktuelt eksekverende mappe også hentes ved hjælp af 'chdir()' metode, som vist nedenfor:

behandle. chdir ( '../' ) ;
konsol. log ( ' \n Naviger til rodmappen: ' + behandle. cwd ( ) ) ;

Udfør nu denne ' app.js ' fil ved hjælp af ' node kommando:\

node app

Outputtet viser, at stien til de aktuelle rodmapper er hentet:

Pro tip: I tilfælde af at du vil lege lidt mere med stier og ønsker at deltage, normalisere eller udføre andre ting over den hentede eller angivne sti. Skal besøge vores anden artikel 'Hvordan bruges stimodulet til Node.js?' .

Denne blog har forklaret proceduren til at navigere filstier i NodeJS.

Konklusion

For at navigere filstier i Node Js, brug ' __dirnavn ' og ' __filnavn ' variabler eller ' process.cwd() ” metode leveret af Node.js. Det ' __dirnavn ' returnerer den absolutte sti til den aktuelle mappe og ' __filnavn ” returnerer stien til den aktuelt eksekverende eller arbejdende fil. Med ' process.cwd() ”-metoden, hentes den aktuelt åbnede mappe, hvori behandlingen finder sted. Denne blog har illustreret de metoder, hvormed filstierne kan hentes.