In nodejs ist ein Modul eine js-Datei, die zur Verwendung einiger bestimmter Funktionen verwendet wird. Durch die Aufteilung aller Funktionen in Module ist der Umfang der in jedem Modul definierten globalen Variablen und Funktionen auch auf dieses Modul beschränkt Abhängigkeiten und kann mehrere Module kapseln.
Die Betriebsumgebung dieses Artikels: Windows 10-System, NodeJS-Version 12.19.0, Dell G3-Computer.
Unterscheiden Sie zwischen Paketen und Modulen: Durch die ordnungsgemäße Verwendung von Paketen und Modulen wird Ihr Programm weniger redundant, gut lesbar und voll funktionsfähig.
Pakete werden zum Verwalten mehrerer Module und ihrer Abhängigkeiten verwendet. Das Stammverzeichnis des Pakets muss die Datei package.json enthalten. Eine package.json-Datei, die der CommonJS-Spezifikation entspricht, enthält im Allgemeinen die folgenden Felder:
Name: Paketname. Paketnamen sind eindeutig und dürfen nur Kleinbuchstaben, Zahlen und Unterstriche enthalten. Version: Versionsnummer des Pakets. Beschreibung: Paketbeschreibung. Schlüsselwörter: Schlüsselwort-Array, wird für die Suche verwendet. Homepage: Projekthomepage. Bugs: Die Adresse zum Einreichen von Bugs. Lizenz: Lizenz. Betreuer: Array von Betreuern. Mitwirkende: Reihe von Mitwirkenden. Repositorys: Array von Projekt-Warehouse-Hostingadressen. Abhängigkeiten: Paketabhängigkeiten.Die Datei package.json kann manuell bearbeitet oder über den Befehl npm init generiert werden. Geben Sie den Befehl npm init im Terminal ein, um ein Paket mit einer package.json-Datei zu generieren. Geben Sie npm init --yes direkt ein, um die Beantwortung der Frage zu überspringen und direkt die Datei package.json mit Standardwerten zu generieren.
Installieren Sie das Paket mit dem Befehl npm install xxx. Zum Beispiel:
Installationspaket: npm install express Update-Paket: npm update express Paket löschen: npm uninstall expressSuchen Sie das Paket in der npm-Community und installieren Sie es über den Befehl npm install module name. Der Name jedes Moduls ist weltweit eindeutig.
Wir müssen JS im Browser mit JS in Node.js vergleichen:
In JavaScript teilen wir den JavaScript-Code normalerweise in mehrere JS-Dateien auf, führen diese JS-Dateien dann zusammen und führen sie im Browser aus. In Node.js sind alle Funktionen in Module unterteilt. Jedes Modul ist eine JS-Datei, und der Umfang der in jedem Modul definierten globalen Variablen und Funktionen ist ebenfalls auf dieses Modul beschränkt. Nur das Exportobjekt kann an die externe Verwendung übergeben werden.Node.js stellt offiziell viele Module bereit, von denen jedes eine Funktion implementiert, z. B. das Modul fs zum Betreiben von Dateien und Dateisystemen, das Modul http zum Erstellen von http-Diensten und das Modul path zum Verarbeiten von Dateipfaden usw.
Wir erstellen ein Modul und exportieren es mit module.exports.
myModule.js-Datei
function foo() { console.log("hello syl");} module.exports.foo = foo;index.js-Datei
var hello = require("./myModule.js");hello.foo();Hinweis: Das Kernmodul ist im lib/-Verzeichnis des Node.js-Quellcodes definiert. require() lädt immer zuerst Kernmodule. Beispiel: require('http') gibt immer das integrierte HTTP-Modul zurück, auch wenn eine Datei mit demselben Namen vorhanden ist.
Um Ihre Vorgänge zu vereinfachen, stellt Node.js eine spezielle Variable bereit: exports gleich module.exports. Diese beiden Codezeilen haben den gleichen Effekt:
module.exports.foo = foo;exports.foo = foo;Erklären Sie den Fall:
// module.jsconsole.log('module', module)console.log('module.exports', module.exports)console.log('exports', exports)console.log(module.exports === exports) ;console.log("========================================"); exports = { a: 3, };console.log(exports);console.log(module.exports);console.log(exports === module.exports);require() ruft den von module.exports exportierten Wert ab. Sie können module.exports und exports verwenden, um mehrere Mitglieder zu exportieren. Sie können module.exports nur verwenden, um ein einzelnes Mitglied zu exportieren.
Empfohlenes Lernen: „nodejs-Video-Tutorial“
Das Obige ist der detaillierte Inhalt der Module und Pakete von nodejs. Weitere Informationen finden Sie in anderen verwandten Artikeln auf dieser Website!