Node.js NPM-Tutorial: So erstellen, erweitern und veröffentlichen Sie Module

Node.js-Module

Ein Modul in Node.js ist eine logische Kapselung von Code in einer einzelnen Einheit. Es ist immer eine gute Programmierpraxis, den Code immer so zu trennen, dass er für zukünftige Zwecke besser verwaltbar und wartbar ist. Hier kommen Module in Node.js ins Spiel.

Da jedes Modul eine unabhängige Einheit mit eigener gekapselter Funktionalität ist, kann es als separate Arbeitseinheit verwaltet werden.

Was ist ein Modul in Node.js?

Wie bereits erwähnt, sind Module in Node js eine Möglichkeit, Code in einer separaten logischen Einheit zu kapseln. Es gibt viele vorgefertigte Module auf dem Markt, die in Node js verwendet werden können.

Nachfolgend sind einige der beliebtesten Module aufgeführt, die in einer Node-JS-Anwendung verwendet werden

  1. Express-Framework – Express ist ein minimales und flexibles Node js-Webanwendungsframework, das eine Reihe robuster Funktionen für das Web und bietet Mobile um weitere Anwendungsbeispiele zu finden.
  2. socket.io – Socket.IO ermöglicht bidirektionale ereignisbasierte Kommunikation in Echtzeit. Dieses Modul eignet sich für die Erstellung von Chat-basierten Anwendungen.
  3. Jade – Jade ist eine leistungsstarke Template-Engine und wird mit implementiert JavaScript für Knoten und Browser.
  4. MongoDB - Die MongoDB Der Node.js-Treiber ist der offiziell unterstützte Node.js-Treiber für MongoDB.
  5. Restifizieren – Restify ist ein leichtgewichtiges Framework, ähnlich wie Express zum Erstellen von REST-APIs
  6. Bluebird – Bluebird ist eine voll funktionsfähige Versprechenbibliothek mit Schwerpunkt auf innovative Funktionen und Leistung

Verwenden von Modulen in Node.js

Um Module in a Node.js Für die Anwendung müssen diese zunächst mit dem Node-Paketmanager installiert werden.

Die folgende Befehlszeile zeigt, wie ein Modul „express“ installiert werden kann.

npm install express

Verwenden von Modulen in Node.js

  • Der obige Befehl lädt die erforderlichen Dateien herunter, die die „Express-Module“ enthalten, und kümmert sich auch um die Installation
  • Sobald das Modul installiert wurde, müssen Sie zum Verwenden eines Moduls in einer Node.js-Anwendung das Schlüsselwort „require“ verwenden. Dieses Schlüsselwort ist eine Möglichkeit, die Node.js verwendet, um die Funktionalität eines Moduls in eine Anwendung zu integrieren.

Schauen wir uns ein Beispiel an, wie wir das Schlüsselwort „require“ verwenden können. Das folgende „Guru99“-Codebeispiel zeigt, wie die Funktion „require“ verwendet wird

Verwenden von Modulen in Node.js

var express=require('express');
var app=express();
app.set('view engine','jade');
app.get('/',function(req,res)
{
});
var server=app.listen(3000,function()
{
});
  1. In der ersten Anweisung selbst verwenden wir das Schlüsselwort „require“, um das Express-Modul einzubinden. Das „Express“-Modul ist optimiert JavaScript Bibliothek für die Node.js-Entwicklung. Dies ist eines der am häufigsten verwendeten Node.js-Module.
  2. Nachdem das Modul eingebunden wurde, muss ein Objekt erstellt werden, um die Funktionalität innerhalb des Moduls nutzen zu können. Hier wird ein Objekt des Express-Moduls erstellt.
  3. Sobald das Modul mit dem Befehl „require“ eingebunden und ein „Objekt“ erstellt wurde, können die erforderlichen Methoden des Express-Moduls aufgerufen werden. Hier verwenden wir den Befehl „set“, um die Ansichts-Engine festzulegen, mit der die in Node.js verwendete Template-Engine festgelegt wird.
  4. Hinweis: -(Nur zum Verständnis des Lesers; eine Templating-Engine ist ein Ansatz zum Einfügen von Werten in eine Anwendung durch das Aufnehmen von Daten aus Datendateien. Dieses Konzept ist in Angular JS ziemlich bekannt, wo die geschweiften Klammern {{ key }} zum Ersetzen von Werten verwendet werden der Webseite. Das Wort „key“ in den geschweiften Klammern bezeichnet grundsätzlich die Variable, die bei der Anzeige der Seite durch einen Wert ersetzt wird.)

  5. Hier verwenden wir die Listen-to-Methode, um die Anwendung dazu zu bringen, eine bestimmte Portnummer abzuhören.

So erstellen Sie NPM-Module

Node.js bietet die Möglichkeit, benutzerdefinierte Module zu erstellen und ermöglicht Ihnen, diese benutzerdefinierten Module in Ihre Node.js-Anwendung einzubinden.

Schauen wir uns ein einfaches Beispiel an, wie wir unser eigenes Modul erstellen und dieses Modul in unsere Hauptanwendungsdatei aufnehmen können. Unser Modul übernimmt lediglich die einfache Aufgabe, zwei Zahlen zu addieren.

Befolgen Sie die folgenden Schritte, um zu sehen, wie wir Module erstellen und in unsere Anwendung integrieren können.

Following ist ein Schritt-für-Schritt-Prozess zum Erstellen von NPM-Modulen

Schritt 1) Erstellen Sie eine Datei und fügen Sie den folgenden Code ein
Erstellen Sie eine Datei mit dem Namen „Addition.js“ und fügen Sie den folgenden Code ein. Diese Datei enthält die Logik für Ihr Modul.

Unten finden Sie den Code, der in diese Datei eingefügt wird.

Erstellen von NPM-Modulen

var exports=module.exports={};
exports.AddNumber=function(a,b)
{
return a+b;
};
  1. Das Schlüsselwort „exports“ wird verwendet, um sicherzustellen, dass andere Dateien tatsächlich auf die in dieser Datei definierte Funktionalität zugreifen können.
  2. Anschließend definieren wir eine Funktion namens „AddNumber“. Diese Funktion ist so definiert, dass sie zwei Parameter annimmt, a und b. Die Funktion wird dem Modul „Exports“ hinzugefügt, um die Funktion als öffentliche Funktion zu machen, auf die andere Anwendungsmodule zugreifen können.
  3. Endlich sorgen wir dafür, dass unsere Funktion den Mehrwert der Parameter zurückgibt.

Jetzt haben wir unser benutzerdefiniertes Modul erstellt, das die Funktion hat, zwei Zahlen hinzuzufügen. Jetzt ist es an der Zeit, eine Anwendung zu erstellen, die dieses Modul aufruft.

Im nächsten Schritt werden wir sehen, wie wir die Anwendung erstellen, die unser benutzerdefiniertes Modul aufruft.

Schritt 2) Erstellen Sie eine Bewerbungsdatei
Erstellen Sie eine Datei mit dem Namen „app.js“, die Ihre Hauptanwendungsdatei ist, und fügen Sie den folgenden Code hinzu

Erstellen von NPM-Modulen

var Addition=require('./Addition.js');
console.log(Addition.AddNumber(1,2));
  1. Wir verwenden das Schlüsselwort „require“, um die Funktionalität in die Datei Addition.js aufzunehmen.
  2. Da nun auf die Funktionen in der Datei Addition.js zugegriffen werden kann, können wir jetzt die AddNumber-Funktion aufrufen. In der Funktion übergeben wir 2 Zahlen als Parameter. Wir zeigen den Wert dann in der Konsole an.

Erstellen von NPM-Modulen

Output:

  • Wenn Sie die Datei app.js ausführen, erhalten Sie im Konsolenprotokoll eine Ausgabe mit dem Wert 3.
  • Das Ergebnis liegt daran, dass die AddNumber-Funktion in der Datei Addition.js erfolgreich aufgerufen wurde und der zurückgegebene Wert 3 in der Konsole angezeigt wurde.

Hinweis: – Wir verwenden den „Node Package Manager“ noch nicht, um unser Addition.js-Modul zu installieren. Dies liegt daran, dass das Modul bereits Teil unseres Projekts auf dem lokalen Computer ist. Der Node-Paketmanager kommt ins Spiel, wenn Sie ein Modul im Internet veröffentlichen, was wir im folgenden Thema sehen.

Erweitern von Modulen in Node.js

Beim Erstellen von Modulen ist es auch möglich, ein Modul von einem anderen zu erweitern oder zu erben.

In der modernen Programmierung ist es durchaus üblich, eine Bibliothek mit allgemeinen Modulen zu erstellen und dann bei Bedarf die Funktionalität dieser gemeinsamen Module zu erweitern.

Schauen wir uns ein Beispiel an, wie wir Module in Node.js erweitern können.

Schritt 1) Erstellen Sie das Basismodul.

Erstellen Sie in unserem Beispiel eine Datei mit dem Namen „Tutorial.js“ und fügen Sie den folgenden Code ein.

In diesem Code erstellen wir lediglich eine Funktion, die einen String an die Konsole zurückgibt. Die zurückgegebene Zeichenfolge ist „Guru99 Tutorial“.

Erweitern von Modulen in Node.js

var exports=module.exports={};
exports.tutorial=function()
{
console.log("Guru99 Tutorial")
}
  1. Das Exportmodul wird verwendet, damit jede in dieser Datei definierte Funktion in anderen Modulen in Node.js verfügbar sein kann
  2. Wir erstellen eine Funktion namens Tutorial, die in anderen Node.js-Modulen verwendet werden kann.
  3. Wenn diese Funktion aufgerufen wird, wird in der Konsole die Zeichenfolge „Guru99 Tutorial“ angezeigt.

Jetzt haben wir unser Basismodul namens Tutorial.js erstellt. Jetzt ist es an der Zeit, ein weiteres Modul zu erstellen, das dieses Basismodul erweitert.

Wir werden im nächsten Schritt untersuchen, wie das geht.

Schritt 2) Als nächstes erstellen wir unser erweitertes Modul. Erstellen Sie eine neue Datei mit dem Namen „NodeTutorial.js“ und fügen Sie den folgenden Code in die Datei ein.

Erweitern von Modulen in Node.js

var Tutor=require('./Tutorial.js');
exports.NodeTutorial=function()
{
console.log("Node Tutorial")
function pTutor()
{
var PTutor=Tutor
PTutor.tutorial();
}
}

Or
var Tutor=require('./Tutorial.js');
exports.NodeTutorial=function()
{
console.log("Node Tutorial")
this.pTutor = function ()
{
var PTutor=Tutor
PTutor.tutorial();
}
}

Beachten Sie Folgendeswing Wichtige Punkte zum obigen Code

  1. Wir verwenden die Funktion „require“ in der neuen Moduldatei selbst. Da wir die bestehende Moduldatei „Tutorial.js“ erweitern werden, müssen wir diese zunächst einbinden, bevor wir sie erweitern können.
  2. Anschließend erstellen wir eine Funktion namens „Nodetutorial“. Diese Funktion erledigt zwei Dinge:
  • Es wird eine Zeichenfolge „Node Tutorial“ an die Konsole gesendet.
  • Es sendet die Zeichenfolge „Guru99 Tutorial“ vom Basismodul „Tutorial.js“ an unser erweitertes Modul „NodeTutorial.js“.
  1. Hier führen wir den ersten Schritt durch, um einen String über „Node Tutorial“ an die Konsole zu senden.
  2. Der nächste Schritt besteht darin, die Funktion aus unserem Tutorial-Modul aufzurufen, das die Zeichenfolge „Guru99 Tutorial“ an die console.log ausgibt.

Schritt 3) Erstellen Sie Ihre Hauptdatei app.js, die Ihre Hauptanwendungsdatei ist, und fügen Sie den folgenden Code ein.

Erweitern von Modulen in Node.js

var localTutor=require('./NodeTutorial.js');
localTutor.NodeTutorial();
localTutor.NodeTutorial.pTutor();

Or use this code
var tut = new localTutor.NodeTutorial();  // Create and save object
tut.pTutor();  // Call function on object

Der obige Code führt Folgendes auswing Dinge;

  1. Unsere Hauptanwendungsdatei nennt sich nun das Modul „NodeTutorial“.
  2. Wir rufen die Funktion „NodeTutorial“ auf. Durch den Aufruf dieser Funktion wird im Konsolenprotokoll der Text „Node Tutorial“ angezeigt.
  3. Da wir unser Tutorial.js-Modul erweitert und eine Funktion namens pTutor verfügbar gemacht haben. Außerdem wird das Tutorial-Modul im Tutorial.js-Modul aufgerufen und der Text „Guru99 Tutorial“ wird ebenfalls auf der Konsole angezeigt.

Ausgang:

Da wir den obigen app.js-Code mit Node ausgeführt haben, erhalten wir Folgendeswing Ausgabe in der Datei console.log

  • Knoten-Tutorial
  • Guru99-Tutorial

NPM (Node Package Manager) Paket veröffentlichen

Man kann sein eigenes Modul in seinem eigenen Github-Repository veröffentlichen.

Durch die Veröffentlichung Ihres Moduls an einem zentralen Ort müssen Sie sich nicht mehr selbst auf jedem Computer installieren, der es benötigt.

Stattdessen können Sie den Befehl install von npm verwenden und Ihr veröffentlichtes npm-Modul installieren.

Die folgendenwing Zum Veröffentlichen Ihres NPM-Moduls müssen die Schritte befolgt werden

Schritt 1) Erstellen Sie Ihr Repository auf GitHub (einem Online-Tool zur Code-Repository-Verwaltung). Es kann zum Hosten Ihrer Code-Repositorys verwendet werden.

Schritt 2) Sie müssen Ihrer lokalen NPM-Installation mitteilen, wer Sie sind. Das bedeutet, dass wir npm mitteilen müssen, wer der Autor dieses Moduls ist, was das e istmail id und jede verfügbare Unternehmens-URL, die dieser ID zugeordnet werden muss. Alle diese details wird Ihrem npm-Modul hinzugefügt, wenn es veröffentlicht wird.

Die folgenden Befehle legen den Namen fest, zmail und URL des Autors des npm-Moduls.

npm set init.author.name „Guru99.“

npm set init.author.email „guru99@gmail.com ”

npm set init.author.url „http://Guru99.com“

Schritt 3) Der nächste Schritt besteht darin, sich mit den im letzten Schritt bereitgestellten Anmeldeinformationen bei npm anzumelden. Um sich anzumelden, müssen Sie den folgenden Befehl verwenden

npm login

Schritt 4) Initialisieren Sie Ihr Paket – Der nächste Schritt besteht darin, das Paket zu initialisieren, um die Datei package.json zu erstellen. Dies kann durch Ausgabe des folgenden Befehls erfolgen

npm init

Wenn Sie den obigen Befehl ausführen, werden Ihnen einige Fragen gestellt. Die wichtigste ist die Versionsnummer Ihres Moduls.

Schritt 5) Auf GitHub veröffentlichen – Der nächste Schritt besteht darin, Ihre Quelldateien auf GitHub zu veröffentlichen. Dies kann durch Ausführen der folgenden Befehle erfolgen.

git add.
git commit -m "Initial release"
git tag v0.0.1 
git push origin master --tags

Schritt 6) Veröffentlichen Sie Ihr Modul – Der letzte Schritt besteht darin, Ihr Modul in der npm-Registrierung zu veröffentlichen. Dies geschieht über den folgenden Befehl.

npm publish

Verwalten von Drittanbieterpaketen mit npm

Wie wir gesehen haben, verfügt der „Node Package Manager“ über die Fähigkeit, Module zu verwalten, die von Node.js-Anwendungen benötigt werden.

Schauen wir uns einige der im Node-Paketmanager verfügbaren Funktionen zum Verwalten von Modulen an

  1. Pakete im globalen Modus installieren – Module können auf globaler Ebene installiert werden, was im Grunde bedeutet, dass diese Module für alle Node.js-Projekte auf einem lokalen Computer verfügbar sind. Das folgende Beispiel zeigt, wie Sie das „Express-Modul“ mit der globalen Option installieren.npm install express –global Die globale Option in der obigen Anweisung ermöglicht die Installation der Module auf globaler Ebene.
  2. Auflistung aller globalen Pakete, die auf einem lokalen Computer installiert sind. Dies kann durch Ausführen des folgenden Befehls in der Eingabeaufforderung erfolgennpm-Liste –globalUnten sehen Sie die Ausgabe, die angezeigt wird, wenn Sie zuvor das „Express-Modul“ auf Ihrem System installiert haben. Hier können Sie die verschiedenen Module sehen, die auf dem lokalen Computer installiert sind.

Verwalten von Drittanbieterpaketen mit NPM

  1. Installieren einer bestimmten Version eines Pakets – Manchmal kann es erforderlich sein, nur eine bestimmte Version eines Pakets zu installieren. Sobald Sie den Paketnamen und die relevante Version kennen, die installiert werden muss, können Sie den Befehl npm install verwenden, um diese bestimmte Version zu installieren. Das folgende Beispiel zeigt, wie Sie das Modul namens „underscore“ mit einer bestimmten Version von 1.7.0npm install installieren unterstrich@1.7.0
  2. Aktualisieren einer Paketversion – Manchmal haben Sie möglicherweise eine ältere Version eines Pakets in einem System und möchten möglicherweise auf die neueste auf dem Markt verfügbare Version aktualisieren. Dazu kann man den Befehl npm update verwenden. Das folgende Beispiel zeigt, wie das Underscore-Paket auf die neueste Version aktualisiert wirdnpm-Update-Unterstrich
  3. Searching für ein bestimmtes Paket – Um zu suchen, ob eine bestimmte Version auf dem lokalen System verfügbar ist oder nicht, können Sie den Suchbefehl von npm verwenden. Im folgenden Beispiel wird überprüft, ob das Express-Modul auf dem lokalen Computer installiert ist oder nicht.NPM-Suchexpress
  4. Deinstallieren eines Pakets – Genauso wie Sie ein Paket installieren können, können Sie auch ein Paket deinstallieren. Die Deinstallation eines Pakets erfolgt mit dem Deinstallationsbefehl von npm. Das folgende Beispiel zeigt, wie das Express-Modul deinstalliert wirdnpm express deinstallieren

Was ist die package.json-Datei?

Die Datei „package.json“ wird zum Speichern der Datei verwendet Metadaten zu einem bestimmten Projekt. Diese Informationen liefern dem Node-Paketmanager die notwendigen Informationen, um zu verstehen, wie das Projekt zusammen mit seinen Abhängigkeiten gehandhabt werden soll.

Die package.json-Dateien enthalten Informationen wie die Projektbeschreibung, die Version des Projekts in einer bestimmten Distribution, Lizenzinformationen und Konfigurationsdaten.

Die Datei package.json befindet sich normalerweise im Stammverzeichnis eines Node.js-Projekts.

Nehmen wir ein Beispiel dafür, wie die Struktur eines Moduls aussieht, wenn es über npm installiert wird.

Der folgende Schnappschuss zeigt den Dateiinhalt des Express-Moduls, wenn es in Ihr Node.js-Projekt eingebunden ist. Auf dem Schnappschuss können Sie die Datei package.json im Express-Ordner sehen.

Die Package.json-Datei

Wenn Sie die Datei package.json öffnen, sehen Sie viele Informationen in der Datei.

Unten finden Sie eine Momentaufnahme eines Teils der Datei. Der express@~4.13.1 gibt die Versionsnummer des verwendeten Express-Moduls an.

Die Package.json-Datei

Zusammenfassung

  • Ein Modul in Node.js ist eine logische Kapselung von Code in einer einzelnen Einheit. Durch die Aufteilung in Module wird der Code für zukünftige Zwecke besser verwaltbar und wartbar
  • Es gibt viele Module auf dem Markt, die in Node.js verwendet werden können, z. B. Express, Underscore, MongoDB, usw.
  • Der Node Package Manager (npm) wird zum Herunterladen und Installieren von Modulen verwendet, die dann in einer Node.js-Anwendung verwendet werden können.
  • Man kann benutzerdefinierte NPM-Module erstellen, diese Module erweitern und diese Module auch veröffentlichen.
  • Der Node-Paketmanager verfügt über einen vollständigen Befehlssatz zum Verwalten der npm-Module auf dem lokalen System, z. B. Installation, Deinstallation uswarching usw.
  • Die Datei package.json wird verwendet, um die gesamten Metadateninformationen für ein npm-Modul zu speichern.