node.js Module sind in sich geschlossene Codeeinheiten, die die Wiederverwendbarkeit fördern und die Anwendungsentwicklung vereinfachen. In diesem Artikel wird die Erstellung, den Exportieren und den Import der Modul mit dem CommonJS -Format, dem Node.js -Standard, untersucht.
Schlüsselkonzepte:
require
und module.exports
), das in Node.js und dem NPM -Ökosystem vorherrscht. Andere Formate (AMD, ESM, System.register, UMD) existieren, sind aber hier nicht abgedeckt. module.exports
für Standard Exporte und das Verständnis der Nuancen von module.exports
gegen exports
. node.js Modulformate (kurze Übersicht):
Während in JavaScript verschiedene Modulformate existieren, konzentriert sich dieses Leitfaden auf CommonJs, den Standard für Node.js. Andere Formate sind: AMD (Asynchronmoduldefinition), ESM (ES -Module), System.register und UMD (Universal Modul Definition).
Verwenden von integrierten Modulen:
node.js bietet integrierte Module, die über das Schlüsselwort require
zugegriffen werden können. Das Dateisystemmodul (fs
) bietet beispielsweise Funktionen wie readdir
zum Auflisten von Verzeichnisinhalten:
const fs = require('fs'); const folderPath = '/home/jim/Desktop/'; fs.readdir(folderPath, (err, files) => { files.forEach(file => { console.log(file); }); });
CommonJS -Module laden synchron, verarbeitet in ihrer Erscheinungsreihenfolge.
Erstellen und Exportieren eines Moduls:
Erstellen wir ein user.js
Modul:
const getName = () => 'Jim'; exports.getName = getName;
importieren Sie es dann in index.js
:
const user = require('./user'); console.log(`User: ${user.getName()}`);
Ausgleichen node index.js
Ausgibt "Benutzer: jim". Das Objekt exports
ist getName
für den Import verfügbar. Das Präfix ./
in require
zeigt eine lokale Datei an. Die Dateierweiterung wird weggelassen.
Mehrere Elemente exportieren:
Mehrere Methoden und Werte können exportiert werden:
const getName = () => 'Jim'; const getLocation = () => 'Munich'; const dateOfBirth = '12.01.1982'; exports.getName = getName; exports.getLocation = getLocation; exports.dob = dateOfBirth;
Importieren und verwenden Sie sie nach Bedarf in index.js
. Beachten Sie, dass die exportierten Namen (dob
hier) von den ursprünglichen Variablennamen abweichen können.
Alternative Exportsyntax:
Exporte können inline definiert werden:
exports.getName = () => 'Jim'; exports.getLocation = () => 'Munich'; exports.dob = '12.01.1982';
destructurierende Importe:
Destructuring ermöglicht selektive Importe:
const { getName, dob } = require('./user'); console.log(`${getName()} was born on ${dob}.`);
Standardexporte mit module.exports
:
Für Module, die eine einzelne Entität exportieren, wird module.exports
bevorzugt:
const fs = require('fs'); const folderPath = '/home/jim/Desktop/'; fs.readdir(folderPath, (err, files) => { files.forEach(file => { console.log(file); }); });
module.exports
vs. exports
:
exports
ist zunächst ein Verweis auf module.exports
. Die direkte Neuzuweisung module.exports
ersetzt das gesamte Exportobjekt. Es ist Best Practice, konsequent module.exports
zu verwenden, um ein unerwartetes Verhalten zu vermeiden.
Schlussfolgerung:
Module sind für die effektive Node.js -Entwicklung von grundlegender Bedeutung. Dieser Artikel bietet eine solide Grundlage für das Verständnis und die effiziente Nutzung. Weitere Informationen finden Sie in den bereitgestellten Ressourcen.
FAQs:
Der bereitgestellte FAQS-Abschnitt ist bereits gut strukturiert und informativ. Keine Änderungen erforderlich.
Das obige ist der detaillierte Inhalt vonVerstehen von Module.exports und Exporten in node.js.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!