Node.js
Wie werden Module geladen?
Suche…
Globaler Modus
Wenn Sie Node mithilfe des Standardverzeichnisses im globalen Modus installiert haben, installiert NPM Pakete in /usr/local/lib/node_modules
. Wenn Sie in der Shell Folgendes eingeben, sucht NPM nach der neuesten Version des Pakets mit dem Namen sax, lädt sie herunter und installiert sie im Verzeichnis /usr/local/lib/node_modules/express
:
$ npm install -g express
Stellen Sie sicher, dass Sie über ausreichende Zugriffsrechte für den Ordner verfügen. Diese Module sind für alle Knotenprozesse verfügbar, die auf dieser Maschine ausgeführt werden
Im lokalen Modus installieren. Npm lädt Module herunter und installiert sie in den aktuellen Arbeitsordnern. Erstellen Sie dazu einen neuen Ordner namens node_modules
Wenn Sie sich beispielsweise in /home/user/apps/my_app
ein neuer Ordner mit dem Namen node_modules
/home/user/apps/my_app/node_modules
falls noch nicht vorhanden
Module laden
Wenn wir das Modul im Code referenzieren, sucht der Knoten zuerst den Ordner node_module
innerhalb des referenzierten Ordners in der erforderlichen Anweisung. Wenn der node_module
nicht relativ ist und kein Kernmodul ist, versucht Node, den Knoten im Ordner node_modules
im aktuellen Ordner zu finden Verzeichnis. Wenn Sie beispielsweise Folgendes tun, versucht Node, nach der Datei ./node_modules/myModule.js
zu suchen:
var myModule = require('myModule.js');
Wenn Node die Datei nicht findet, wird sie im übergeordneten Ordner mit dem Namen ../node_modules/myModule.js
. Wenn es erneut fehlschlägt, wird der übergeordnete Ordner ausprobiert und so lange abgesenkt, bis er den Stammordner erreicht oder das erforderliche Modul gefunden hat.
Sie können die Erweiterung .js
auch weglassen, wenn Sie .js
In diesem Fall .js
node die Erweiterung .js
und sucht nach der Datei.
Laden eines Ordnermoduls
Sie können den Pfad für einen Ordner verwenden, um ein Modul wie folgt zu laden:
var myModule = require('./myModuleDir');
Wenn Sie dies tun, sucht Node in diesem Ordner. Der Knoten nimmt an, dass dieser Ordner ein Paket ist und versucht, nach einer Paketdefinition zu suchen. Diese package.json
sollte eine Datei namens package.json
. Wenn dieser Ordner keine package.json
mit dem Namen package.json
, nimmt der package.json
den Standardwert index.js
, und Node sucht in diesem Fall nach einer Datei unter dem Pfad ./myModuleDir/index.js
.
Der letzte Ausweg, falls das Modul in keinem der Ordner gefunden wird, ist der globale Modulinstallationsordner.