Weil ich häufig mit mehreren Umgebungsvariablen arbeite, finde ich es nützlich, sie in einer separaten .env
-Datei aufzubewahren (stellen Sie sicher, dass Sie dies aus Ihrer Quellkontrolle ignorieren). Dann (in Linux) fügen Sie export $(cat .env | xargs) &&
in Ihren Skriptbefehl ein, bevor Sie Ihre App starten.
Beispiel einer .env
-Datei:
VAR_A=Hallo Welt
VAR_B=formatieren Sie die .env-Datei auf diese Weise mit neuen Variablen, die durch einen Zeilenumbruch getrennt sind
Beispiel index.js
:
console.log('Test', process.env.VAR_A, process.env.VAR_B);
Beispiel package.json
:
{
...
"scripts": {
"start": "node index.js",
"env-linux": "export $(cat .env | xargs) && env",
"start-linux": "export $(cat .env | xargs) && npm start",
"env-windows": "(for /F \"tokens=*\" %i in (.env) do set %i)",
"start-windows": "(for /F \"tokens=*\" %i in (.env) do set %i) && npm start",
}
...
}
Leider scheint es mir nicht möglich zu sein, die Umgebungsvariablen durch Aufruf eines Skripts aus einem Skript heraus zu setzen - wie "start-windows": "npm run env-windows && npm start"
- daher gibt es Redundanz in den Skripts.
Zum Testen können Sie die Umgebungsvariablen anzeigen, indem Sie npm run env-linux
oder npm run env-windows
ausführen, und prüfen, ob sie in Ihre App übernommen werden, indem Sie npm run start-linux
oder npm run start-windows
ausführen.