
A .env
fájl feltalálása óta sokkal könnyebb a fejlesztés . Könnyedén beállíthatja környezeti változóit és értékeit a szintaxissal ENV_VARIABLE=VALUE
és a gémmel! Ezek a változók a környezeti változóként lettek betöltve, lehetővé téve számukra a gyors hozzáférést:
console.log(process.env.ENV_VARIABLE)
Abban az esetben, ha még mindig kíváncsi vagy, hogy mindez mit jelent, akkor valószínűleg új vagy a .env
fájlban. Ez valójában egy egyszerű konfigurációs szövegfájl, amelyet néhány változó definiálására használnak, amelyeket át akar adni az alkalmazás környezetébe.
Ehhez a fájlhoz valami hasonló elemzőre van szükség ahhoz, hogy működjön. Az elemző egyesével elolvassa a változó definícióit, és a környezet számára elemzi őket. Az ENV_VARIABLE = VALUE formátumot használja (a Node.js esetében process.env[ENV_VARIABLE]=VALUE
:).
Természetesen ez nem beépített szolgáltatás a Node.js fájlban. A dotenv nevű népszerű modullal kell elkészítenie .
Szép megoldás, mivel valóban megkönnyítette a fejlesztést a társfejlesztők és az egész dev közösség egészében. Én személy szerint addig használtam a dotenv modult, amíg megrekedtem , és megpróbáltam olyan megoldást találni, amely más konfigurációs fájlok használatát késztethette egy adott környezetre. Az még klasszabb lenne ... ugye? Igen! De sajnos a dotenvmodul nem biztosítja ezt a jót.
Szóval mi a következő? Szükségünk van erre a dologra, hogy megkönnyítsük a fejlesztést és a tesztelést a különböző fejlesztési szakaszokban!
Mit szólnál a különböző környezeti szakaszokhoz tartozó egyéni .env fájlokhoz?
Nem gondolja, hogy ez jó megoldás lenne? Egyéni környezeti változók definiálása csak egy .env.envname fájl létrehozásával ? Menő! Erre jött a custom-env .
Az Custom env egy olyan könyvtár, amely a fejlesztés megkönnyítésére épül, mivel több .env konfigurációt tesz lehetővé különböző környezetek számára. Ez a környezeti változók betöltésével történik .env.envname fájlból a csomópont process.env
objektumába.
Telepítés
Csak ragadja meg a következő paranccsal:
npm i custom-env
Használat
require('custom-env').env()
Alapértelmezés szerint a custom-env kiválasztja a .env fájlt a fejlesztői szakaszhoz. Egy másik szakasz testreszabásához azonban adja hozzá a nevet utótagként, mint az .env.envname fájlban.
Példa
Meghatározhatunk egy egyéni környezeti változót egy átmeneti fejlesztéshez.
- Hozzon létre egy .env.staging fájlt
- Definiálja a változókat
APP_ENV=staging APP_NAME=custom environment app DB_HOST=localhost DB_USER=user DB_PASS=pass
- Hozzáférés a változókhoz
// Require custom-env and set your preferred env file require ('custom-env').env('staging') console.log(process.env.APP_ENV) console.log(process.env.APP_NAME) console.log(process.env.DB_HOST) console.log(process.env.DB_PASS)
Várható kimenet
staging custom environment app localhost user pass
Ennyi, elég könnyű. Nyugodtan adjon meg több változót a különböző szakaszaihoz, amelyekről úgy gondolja, hogy vannak, például:
.env.testing, .env.staging, .env.server1, .env.server2, .env.localhost
Állítsa az Aktuális környezet értékre
Azt mondhatja a custom-env-nek, hogy használjon egy olyan konfigurációt, amely megfelel az aktuális fejlesztési szakasznak a true átadássalhoz env()
módszer.
Példa
Fájl: index.js
// Pass true to env() to make it use the current environment stage. require('custom-env').env(true) console.log(process.env.APP_NAME) console.log(process.env.USERNAME) console.log(process.env.PASSKEY)
Most adjunk meg egy átmeneti konfigurációs fájlt:
Fájl: .env.staging
APP_NAME=Staging Node App USER_NAME=John PASSKEY=J*h*
Most szolgáljuk a csomópontot az átmeneti környezettel:
NODE_ENV=staging node index.js
Várható kimenet

Nesze!
Teljes dokumentáció
A custom-env teljes dokumentációját az npm oldalon találja//www.npmjs.com/package/custom-env
Forráskód
Megszerezheti vagy hozzájárulhat a custom-env-hezforráskód: //github.com/erisanolasheni/custom-env
Boldog kódolás!