Antworten:
Sie können Ihre Umgebungsvariablen wie folgt festlegen process.env
:
process.env['VARIABLE'] = 'value';
-ODER-
process.env.VARIABLE = 'value';
Der Knoten sollte sich um die Plattformspezifikationen kümmern.
var process = require('process')
müssen. Der Prozess ist eine globale Variable.
process.env.VARIABLE
ist in Ordnung, wenn der Variablenname eine bekannte Konstante ist, während er process.env['VARIABLE']
auf jeden Fall funktioniert; Die ursprüngliche Frage enthielt nicht genügend Details, so dass das vielseitigere Beispiel besser geeignet schien.
Zuerst sollten Sie dieses Paket installieren: -
https://github.com/motdotla/dotenv [ npm install dotenv
]
Dann müssen Sie eine .env-Datei im Stammverzeichnis Ihres Projekts erstellen und dort können Sie Variablen wie die folgenden hinzufügen: -
NODE_ENV=PRODUCTION
DATABASE_HOST=localhost
Jetzt können Sie wie folgt einfach auf diese Variablen in Ihrem Code zugreifen: -
require('dotenv').config()
console.log(process.env.NODE_ENV);
Es hat bei mir funktioniert, hoffentlich hilft das.
node v14.2.0 Um die env-Variable festzulegen, erstellen Sie zunächst einen Dateinamen config.env in Ihrem Projekt-Ausgangsverzeichnis und schreiben Sie dann beispielsweise alle benötigten Variablen
config.env
NODE_ENV=development
PORT=3000
DATABASE=mongodb+srv://lord:<PASSWORD>@cluster0-eeev8.mongodb.net/tour-guide?retryWrites=true&w=majority
DATABASE_LOCAL=mongodb://localhost:27017/tours-test
DATABASE_PASSWORD=UDJUKXJSSJPWMxw
Jetzt installiere dotenv von npm, dotenv wird deine Arbeit auslagern
npm i dotenv
Jetzt in Ihrem Server-Starter-Skript ist es in meinem Fall server.js. Verwenden Sie doenv, um env-Variablen zu laden.
const dotenv = require('dotenv');
dotenv.config({ path: './config.env' });
const app = require('./app'); // must be after loading env vars using dotenv
//starting server
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`app running on port ${port}...`);
});
Ich verwende Express, meinen gesamten Express-Code in app.js, und schreibe hier als Referenz
const express = require('express');
const tourRouter = require('./route/tourRouter');
const userRouter = require('./route/userRouter');
if (process.env.NODE_ENV === 'development') {
console.log('mode development');
}
app.use(express.json());
app.use('/api/v1/tours', tourRouter);
app.use('/api/v1/users', userRouter);
module.exports = app;
Starten Sie jetzt Ihren Server über die Konsole. Ich verwende nodemon . Sie können ihn von npm aus installieren.
nodemon server.js