Das Grundkonzept der ModularitätWas ist Modularität
Modularität in der Programmierung bedeutet, eine große Datei nach festen Regeln in mehrere unabhängige und voneinander abhängige kleine Module aufzuteilen. Die Vorteile der modularen Zerlegung
Modularität in Node.jsKlassifizierung von Modulen in Node.jsIn Node.js werden Module entsprechend ihrer Quelle in drei Kategorien unterteilt: 1. Integrierte Module (integrierte Module werden offiziell von Node.js bereitgestellt, wie z. B. fs, path, http usw.) 2. Benutzerdefinierte Module (jede vom Benutzer erstellte JS-Datei ist ein benutzerdefiniertes Modul) 3. Module von Drittanbietern (von Drittanbietern entwickelte Module, keine offiziell bereitgestellten integrierten Module oder von Benutzern erstellte benutzerdefinierte Module, die vor der Verwendung heruntergeladen werden müssen) Module ladenMit der Methode require() können Sie die erforderlichen integrierten Module, benutzerdefinierten Module und Module von Drittanbietern zur Verwendung laden. //Lade das eingebaute fs-Modul const fs = require('fs') //Benutzerdefiniertes Modul laden const custom = require('./custom.js') //Drittanbietermodule laden const moment = require('moment') Hinweis : Wenn Sie die Methode require() zum Laden anderer Module verwenden, wird der Code im geladenen Modul ausgeführt Modulumfang
//Datei: 01.custom.js const username = 'Benutzername' //Konstanten Benutzernamen im Modulbereich definieren Funktion sagHallo(){ console.log('Hallo zusammen, ich bin:' + Benutzername) //Definiere die Funktion sayHello im Modulbereich } //Datei: 02.custom.js const custom = require('./01.custom') //Datei 01.custom importieren console.log(custom) // Ausgabe {} leeres Objekt. Auf private Mitglieder im Modul 01.custom.js kann im Modul 02.custom.js nicht zugegriffen werden Freigeben von Mitgliedern mit Modulbereich nach außenModulobjektIn jedem benutzerdefinierten JS-Modul gibt es ein Modulobjekt, das Informationen zum aktuellen Modul speichert. In einem benutzerdefinierten Modul können Sie das Objekt module.exports verwenden, um die Mitglieder innerhalb des Moduls für die externe Verwendung freizugeben. Wenn die Außenwelt die Methode require() verwendet, um ein benutzerdefiniertes Modul zu importieren, wird das Objekt erhalten, auf das module.exports zeigt. Hinweis: Wenn Sie die Methode require() zum Importieren eines Moduls verwenden, basiert das Ergebnis des Imports immer auf dem Objekt, auf das module.exports zeigt. Zum Beispiel: //Datei: 01.custom.js module.exports.username = 'zs' // Mounten Sie das Attribut username im module.exports-Objekt module.exports.sayHello = Funktion(){ console.log('Hallo') //Definieren Sie die Funktion sayHello im Modulbereich } module.exports = { // module.exports auf einen neuen Objekt-Spitznamen verweisen lassen: 'Xiao Ming', sagHallo(){ console.log('Hallo!') } } //Datei: 02.custom.js const custom = require('./01.custom.js') //Datei 01.custom importieren console.log(custom) //Ausgabe { nickname:'Xiao Ming', sayHi:[Function:sayHi]} ExportobjektDa das Wort module.exports kompliziert zu schreiben ist, stellt Node das Exportobjekt bereit, um den Code für die externe Freigabe von Mitgliedern zu vereinfachen. Standardmäßig verweisen „Exporte“ und „Modul.Exports“ auf dasselbe Objekt. Das endgültige Freigabeergebnis basiert weiterhin auf dem Objekt, auf das module.exports zeigt. Missbrauch von Exporten und module.exports
Hinweis: Innerhalb jedes Moduls stellt die Modulvariable das aktuelle Modul dar. Die Modulvariable ist ein Objekt und ihre Exporteigenschaft (d. h. module.exports) ist die externe Schnittstelle Beim Laden eines Moduls wird tatsächlich die module.exports-Eigenschaft des Moduls geladen. Zum Laden des Moduls wird die require()-Methode verwendet. npm und PaketeTascheDrittanbietermodule in Node.js werden auch Pakete genannt. So wie sich „Computer“ und „Rechner“ auf dasselbe beziehen, beziehen sich Module und Pakete von Drittanbietern auf dasselbe Konzept, nur mit unterschiedlichen Namen. Da die integrierten Module von Node.js nur einige Low-Level-APIs bereitstellen, ist die Effizienz bei der Entwicklung von Projekten auf Basis integrierter Module sehr gering. Das Paket ist basierend auf den integrierten Modulen gekapselt und bietet eine erweiterte und praktischere API, die die Entwicklungseffizienz erheblich verbessert. Die Beziehung zwischen Paketen und integrierten Modulen ähnelt der Beziehung zwischen jQuery und der integrierten API des Browsers. So laden Sie das Paket herunternpm, Inc. bietet ein Paketverwaltungstool, mit dem wir die erforderlichen Pakete vom Server https://registry.npmjs.org/ zur lokalen Verwendung herunterladen können. Der Name dieses Paketverwaltungstools lautet Node Package Manager (kurz npm-Paketverwaltungstool). Dieses Paketverwaltungstool wird zusammen mit dem Node.js-Installationspaket auf dem Computer des Benutzers installiert. Sie können den Befehl npm -v im Terminal ausführen, um die Version des auf Ihrem Computer installierten npm-Paketverwaltungstools anzuzeigen. Öffnen Sie zunächst das Fenster mit dem Logo und der Taste R, geben Sie cmd ein, öffnen Sie das Fenster und geben Sie npm -v ein. Befehl zum Installieren des Pakets im ProjektDie von mir verwendete Software ist WebStorm2021. Die folgenden Anweisungen werden alle im Terminal der Software WebStorm2021 ausgeführt. npm install Der vollständige Name des Pakets (Wenn Sie beim Ausführen des Befehls npm install am Ende den Parameter -g hinzufügen, wird das Paket als globales Paket installiert.) Nachdem das Paket installiert ist, sehen wir einen Ordner namens node_modules und eine Konfigurationsdatei package-lock.json im Projektordner. Der Ordner node_modules wird zum Speichern aller im Projekt installierten Pakete verwendet. Wenn require() ein Drittanbieterpaket importiert, sucht und lädt es das Paket aus diesem Verzeichnis. Die Konfigurationsdatei package-lock.json wird verwendet, um die Downloadinformationen jedes Pakets im Verzeichnis node_modules aufzuzeichnen, z. B. Paketname, Versionsnummer, Downloadadresse usw. Hinweis: Das Installationspaket muss in einer guten Netzwerkumgebung ausgeführt werden. Installieren Sie eine bestimmte Version des Pakets Wenn Sie ein Paket mit dem Befehl „npm install“ installieren, wird automatisch die neueste Version des Pakets installiert. Wenn Sie eine bestimmte Version eines Pakets installieren müssen, können Sie das @-Symbol nach dem Paketnamen verwenden, um die spezifische Version anzugeben. Beispiel: npm install [email protected] Hinweis: Sie können den Befehl npm install (oder npm i) ausführen, um alle abhängigen Pakete auf einmal zu installieren. (Dies geschieht nach dem Entfernen des node_modules-Projekts). Paket deinstallieren Der Befehl zum Deinstallieren eines Pakets lautet: npm uninstall der vollständige Name des Pakets Lösen Sie das Problem der langsamen Download-GeschwindigkeitWarum ist die Download-Geschwindigkeit langsam?Wenn Sie npm zum Herunterladen von Paketen verwenden, werden diese standardmäßig vom fremden Server https://registry.npmjs.org/ heruntergeladen. Zu diesem Zeitpunkt muss die Übertragung der Netzwerkdaten über ein langes optisches Unterseekabel erfolgen, sodass die Downloadgeschwindigkeit sehr langsam ist. Lösung 1 - Taobao NPM Mirror ServerTaobao hat in China einen Server aufgebaut, der speziell dafür ausgelegt ist, Pakete von offiziellen Servern im Ausland mit inländischen Servern zu synchronisieren und dann Paketdownloaddienste in China bereitzustellen. Dadurch wird die Verpackungsgeschwindigkeit erheblich verbessert. (Spiegelung ist eine Form der Dateispeicherung, bei der die Daten auf einer Festplatte als identische Kopie auf einer anderen Festplatte vorhanden sind.) Lösung 2 - Wechseln Sie die Spiegelquelle des NPM-PaketsDie Spiegelquelle des Pakets bezieht sich auf die Serveradresse, von der das Paket heruntergeladen wird. Lösung 3 - nrmUm die Spiegelquelle des Pakets bequemer zu wechseln, können wir das NRM-Tool installieren. Mit den von NRM bereitgestellten Terminalbefehlen können wir die Spiegelquelle des Pakets schnell anzeigen und wechseln ZusammenfassenDieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können! Das könnte Sie auch interessieren:
|
>>: Detailliertes Tutorial zur Installation und Bereitstellung von Nginx Linux
Der Code kann noch weiter optimiert werden. Aus Z...
Ubuntu 18.04, andere Versionen von Ubuntu Frage: ...
Inhaltsverzeichnis 1. Technologieauswahl 2. Techn...
Inhaltsverzeichnis Array-Deduplizierung 1 Doppels...
Systemumgebung: Ubuntu 16.04LTS In diesem Artikel...
Deaktivieren und Aktivieren von MySQL-Fremdschlüs...
Anruf Wie rufe ich die Amap-API auf? Das offiziel...
Wenn Sie keine Javascript-Steuerung verwenden möch...
Inhaltsverzeichnis 1. Inline-Stile 2. Importmetho...
Ich habe vor Kurzem eine Reihe statistischer Funk...
<br />Hier ergibt sich ein Widerspruch: In k...
Zusammenfassung Docker-Compose kann problemlos me...
Ein Textfeld mit Dropdown-Liste ermöglicht es Ben...
Vorwort Die Standarddatenbankdatei der MySQL-Date...
Inhaltsverzeichnis 1. Das einfachste Beispiel 2. ...