A process.cwd() abszolút útvonal, de a folyamat munkakönyvtárát jelenti. Csak akkor használd projektgyökérként, ha az alkalmazást valóban onnan indítod; más esetben adj át explicit abszolút projektútvonalat.
Az indulás menete
flowchart TD
A[Alkalmazás indulása] --> B[Környezeti változók rendelkezésre állnak]
B --> C[Konfiguráció összeállítása az EnvReaderrel]
C --> D{Sikeres beolvasás?}
D -->|Igen| E[Típusos konfiguráció]
E --> F[Szolgáltatások indítása]
D -->|Nem| G[Indulás megszakítása hibával]
Kötelező érték vagy default?
Ha egy változó undefined, default nélkül a metódus hibát dob. A default általában csak a hiányzó változót helyettesíti: egy jelen lévő, de hibás értéket nem javít ki.
Első lépések
Telepítés
A publikus belépési pontból importáld az
EnvReaderosztályt és szükség esetén azasReadonlyfüggvényt.import { EnvReader, asReadonly } from "@atom-forge/env-reader"; const env = new EnvReader(process.cwd()); export const config = asReadonly({ mode: env.oneOf("APP_ENV", ["dev", "prod", "test"], "prod"), databaseUrl: env.string("DATABASE_URL"), port: env.int("PORT", 3000), });A
process.cwd()abszolút útvonal, de a folyamat munkakönyvtárát jelenti. Csak akkor használd projektgyökérként, ha az alkalmazást valóban onnan indítod; más esetben adj át explicit abszolút projektútvonalat.Az indulás menete
flowchart TD A[Alkalmazás indulása] --> B[Környezeti változók rendelkezésre állnak] B --> C[Konfiguráció összeállítása az EnvReaderrel] C --> D{Sikeres beolvasás?} D -->|Igen| E[Típusos konfiguráció] E --> F[Szolgáltatások indítása] D -->|Nem| G[Indulás megszakítása hibával]Kötelező érték vagy default?
Ha egy változó
undefined, default nélkül a metódus hibát dob. A default általában csak a hiányzó változót helyettesíti: egy jelen lévő, de hibás értéket nem javít ki.const required = env.string("DATABASE_URL"); const optional = env.boolean("DEBUG", false);A következő fejezet: Értékek és listák.