Dieser Artikel führt Sie hauptsächlich in die relevanten Informationen zur Verwendung von Konfigurationsdateien in verschiedenen Umgebungen von Node ein. Der Artikel stellt sie anhand von Beispielcodes ausführlich vor Lassen Sie uns unten gemeinsam lernen.
Vorwort
Beim Schreiben eines vollständigen Projekts mit Node.js werden im Programm häufig einige konfigurierbare Variablen benötigt, sodass das Programm dies zulässt Wie wir alle wissen, gibt es in tatsächlichen Projekten mehrere unterschiedliche Umgebungen. In verschiedenen Umgebungen sind einige Konfigurationen unterschiedlich. Wie können unterschiedliche Konfigurationen in verschiedenen Umgebungen aufgerufen werden? Im Folgenden gibt es nicht viel zu sagen. Werfen wir einen Blick auf die ausführliche Einführung.
1. config-lite-Modul
Führen Sie zunächst ein Konfigurationsmodul config-lite ein und verwenden Sie den Befehl npm i config-lite --save um es zu installieren.
Normalerweise schreiben wir die Konfiguration in verschiedene Konfigurationsdateien für verschiedene Umgebungen. Erstellen Sie ein neues Konfigurationsverzeichnis unter dem Node-Projekt und erstellen Sie neue Konfigurationsdateien für verschiedene Umgebungen. Hier verwende ich „Entwicklung“ und „Produktion“. Umgebungen werden als Beispiele verwendet, um die Bedienung zu erläutern.
In der Entwicklungsumgebung erstellen wir zwei neue Dateien im Konfigurationsverzeichnis: test.js und default.js Sie fragen sich möglicherweise, warum es keine Produktionsmaschinenkonfigurationsdatei gibt, da sich die Produktionsmaschinenkonfiguration im befinden muss Produktionsumgebung erneut erstellen.
Schreiben Sie den folgenden Code in die Konfigurationsdatei test.js (PS. Hier ist die Konfiguration von MySQL als Beispiel):
// test.js module.exports = { mysql : { host: "localhost", user: "lupeng", password: "080910", database: "b1imd" } };
Schreiben Sie einige Standardkonfigurationsdateien in default.js, z Sitzungskonfiguration usw.
// default.js module.exports = { mysql : { host: "10.20.141.220", user: "lupeng", password: "123456", database: "b1imd" }, session: { secret: 'keyboard cat', resave: false, saveUninitialized: true, cookie: { maxAge: 1000*60*60 } } };
Okay, die Konfigurationsdatei ist geschrieben, wie verwende ich sie? Hier verwenden wir das Modul config-lite. Dieses Modul wählt verschiedene Konfigurationsdateien basierend auf Umgebungsvariablen aus. Bevor wir es verwenden, müssen wir den Startbefehl in package.json ändern:
"scripts": { "start": "NODE_ENV=production supervisor --harmony -i views/ ./bin/www", "test": "NODE_ENV=test supervisor --harmony -i views/ ./bin/www" },
Wie Sie oben sehen können Es gibt zwei Startbefehle, einer ist für die Produktionsmaschine und wird mit NODE_ENV=production
festgelegt, der andere ist für die Testmaschine und wird mit NODE_ENV=test
festgelegt. Wenn wir npm test verwenden, um das Projekt zu starten, wird config-lite aktiviert test.js-Konfiguration und wird mit der Konfiguration in default.js zusammengeführt. Wenn dieselben Objekte vorhanden sind, wird die Konfiguration in default.js überschrieben. Die obigen Beispiele haben alle MySQL-Objekte, daher haben hier die Objekte in test.js Vorrang.
Okay, lassen Sie uns vorstellen, wie das config-lite-Modul im Projekt verwendet wird. Der Code in app.js lautet wie folgt:
// 省略... var config = require('config-lite')(__dirname); // 省略... app.use(session(config.session)); console.log("mysql服务器:" + config.mysql.host); // display mysql-config // 省略...
Nach der Einführung können Sie das Konfigurationsobjekt direkt verwenden die Konfigurationsdatei.
2. Produktionsumgebung
Wie nutzt man es also in einer Produktionsumgebung? Die Grundprinzipien und die Verwendung von config-lite wurden oben vorgestellt. In der Produktionsumgebung müssen wir lediglich eine neue Datei Production.js im Konfigurationsverzeichnis der Produktionsmaschinenumgebung erstellen und dann den Startbefehl npm start verwenden.
Um Verwechslungen zwischen den Konfigurationsdateien der Testumgebung und der Produktionsumgebung zu vermeiden, können Sie die Konfigurationsdateien über die .gitignore-Datei ignorieren und Folgendes hinzufügen:
# config config/* !config/default.*
Auf diese Weise, git ignoriert andere Konfigurationen als die Datei default.js. In der lokalen Entwicklungsumgebung können Sie mehrere Konfigurationsdateien zum Testen und zur Verwendung erstellen, indem Sie einfach die entsprechenden Umgebungsvariablen festlegen. Es ist zu beachten, dass der Name der Umgebungsvariablen mit dem Namen der Konfigurationsdatei identisch sein muss.
3. Windows-Umgebung
Vielleicht sind Sie ein Entwickler von Multisystemumgebungen und entwickeln möglicherweise gleichzeitig in Linux- und Windows-Umgebungen. Da Windows die Syntax zum Festlegen von Umgebungsvariablen unterschiedlich ist, können Sie dem Startbefehl package.json zwei Sätze wie folgt hinzufügen:
"scripts": { "start": "NODE_ENV=production supervisor --harmony -i views/ ./bin/www", "test": "NODE_ENV=test supervisor --harmony -i views/ ./bin/www", "winStart": "SET NODE_ENV=production&&supervisor --harmony -i views/ ./bin/www", "winTest": "SET NODE_ENV=test&&supervisor --harmony -i views/ ./bin/www" }
Auf diese Weise erstellen Sie bei Bereitstellung in einer Windows-Umgebung eine neue Produktion Starten Sie im Konfigurationsverzeichnis der .js-Konfigurationsdatei den Befehl npm winStart;
. Erstellen Sie bei der Bereitstellung in einer Linux- oder Unix-ähnlichen Umgebung auch Production.js und starten Sie den Befehl npm start.
Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
Detaillierte Interpretation des React Native Flexbox-Layouts
Welche Methoden gibt es für Referenzpfade in Vue-Einzeldateien?
Details zur Transformation von webpack.config.js in weex
Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie Dateien mit Node (ausführliches Tutorial). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!