Stellen Sie sich vor, Sie haben eine index.js-Datei in Ihrem NodeJS-Projekt, in der Sie fünf Funktionen verwendet haben. Zwei dieser Funktionen können jedoch auch in anderen Dateien verwendet werden. Anstelle einer Datei erstellen Sie also drei Dateien in Ihrem Projekt:
Hier ist jede dieser Javascript-Dateien ein Modul, und die Art und Weise, Klassen/Funktionen zu exportieren und zu importieren, ist im Grunde das Modulsystem. Ein Modulsystem ermöglicht es uns, von uns oder anderen Entwicklern geschriebenen Code aufzuteilen und einzubinden und bei Bedarf zu importieren.
Diese Module sind nicht nur die Javascript-Dateien, die in Ihrem Projekt vorhanden sind; Dabei kann es sich auch um ein beliebiges externes Paket handeln, das Sie als Abhängigkeit in Ihrem Projekt installiert haben. Außerdem verfügt NodeJS über einige integrierte Module wie http, fs usw., die zusammen mit der Installation verfügbar sind und ohne das Hinzufügen externer Abhängigkeiten importiert werden können.
In Node werden zwei Modulsysteme verwendet.
Sie haben das Beispiel Küche-Koch-Kellner in meinem vorherigen Blog gelesen; Wenn wir Module damit vergleichen, stellen wir uns vor, dass CommonJS ein altes großes Rezeptbuch ist, das wir zum Suchen und Finden eines Rezepts benötigen, während ESM eine neue digitale App zum Anzeigen von Rezepten ist.
CommonJS (CJS)
// Export module.exports = function SayHello() { console.log("Hello World!"); }; // Import const GetHello = require("./hello-script.js"); SayHello(); // "Hello World!"
ECMAScript-Module (ESM)
// Export export function SayHello() { console.log("Hello World!"); } // Import import { SayHello } from "./hello-script.js"; SayHello();
Hauptunterschied in der Syntax:
CJS: module.exports / require
ESM: Export / Import
{ type: "module"; }
Manchmal können Sie ECMAScript-Module verwenden, aber ein altes Paket, das Sie importiert haben, ist in CommonJS geschrieben. Um diese Fälle zu bewältigen, stellen wir manchmal sicher, dass der aus der Typescript-Datei generierte Ausgabe-Javascript-Code im üblichen Format vorliegt, auch wenn wir die Typescript-Dateien im ESM-Format geschrieben haben.
Dazu fügen wir die CompilerOptions in die tsconfig.json unseres Projekts ein:
// Export module.exports = function SayHello() { console.log("Hello World!"); }; // Import const GetHello = require("./hello-script.js"); SayHello(); // "Hello World!"
Was passiert dann:
Modul: „commonjs“: Gibt JavaScript mithilfe des CommonJS-Modulsystems aus, das require und module.exports verwendet.
Ziel: „es6“: Stellt sicher, dass das Ausgabe-JavaScript die ES6-Syntax und Funktionen wie Let-, Const- und Pfeilfunktionen verwendet.
Typescript-Code eingeben:
// Export export function SayHello() { console.log("Hello World!"); } // Import import { SayHello } from "./hello-script.js"; SayHello();
Javascript-Code ausgeben:
{ type: "module"; }
Das obige ist der detaillierte Inhalt vonNodeJS-Module [Einfache Erklärung]. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!