So stellen Sie npm so ein, dass Pakete aus mehreren Paketquellen gleichzeitig geladen werden

So stellen Sie npm so ein, dass Pakete aus mehreren Paketquellen gleichzeitig geladen werden

Mit der Entwicklung und Reife der Technologie zur Trennung von Front-End und Back-End übernehmen immer mehr Back-End-Systeme und sogar Front-End-Systeme die Methode der Trennung von Front-End und Back-End. In groß angelegten Systemen zur Trennung von Front-End und Back-End enthält das Front-End häufig eine große Anzahl von Verweisen auf JS-Pakete von Drittanbietern, und jedes Drittanbieterpaket kann von einem anderen Drittanbieterpaket abhängig sein. Daher besteht dringender Bedarf an einem Tool zum Verwalten der Abhängigkeiten zwischen Projektpaketen. Zu diesem Zeitpunkt erscheint npm. npm wird normalerweise zusammen mit nodejs installiert.

In Projekten kommt es häufig zu einer solchen Situation: Einige JS-Pakete sind möglicherweise unternehmensintern gekapselt und enthalten möglicherweise private Informationen, die nicht in das öffentliche Repository von npm hochgeladen werden können. Aus Sicherheitsgründen ist es dann eine gute Methode, diese unternehmensintern gekapselten JS-Pakete in das unternehmensintern erstellte Repository zu stellen. Normalerweise können wir durch die Installation von verdaccio eine unternehmensinterne Repository-Quelle für npm-Pakete erstellen. Nach Abschluss der Erstellung laden wir die unternehmensintern gekapselten JS-Pakete in die private Repository-Quelle des Unternehmens hoch und richten npm dann so ein, dass es beim Initialisieren des Paketladevorgangs nach Paketen aus mehreren Repository-Quellen sucht. Dadurch wird die Funktion realisiert, mit der npm Pakete gleichzeitig aus mehreren Repository-Quellen lädt.

1. Lokalen Speicher erstellen

Geben Sie zuerst den Befehl ein:

npm install -g verdaccio --save

Beachten Sie zum Installieren des Tools zum Erstellen eines privaten NPM-Paket-Repositorys: Sie müssen Node.js installieren, bevor Sie diesen Befehl ausführen.

Nach erfolgreicher Installation wird folgende Abbildung angezeigt:

Nach erfolgreicher Installation finden Sie die Verdaccio-Konfigurationsdatei config.yaml (sofern Sie sich auf einem Windows-System befinden) im Verzeichnis %APPDATA%/Roaming/verdaccio und können sie auch im Befehlszeilenfenster ausführen.

Geben Sie den Befehl verdaccio ein, um verdaccio zu starten. Geben Sie nach dem erfolgreichen Start http://127.0.0.1:4873/ in den Browser ein und Sie können den folgenden Effekt sehen:

Da wir noch keine privaten Pakete dorthin hochgeladen haben, wird eine leere Liste angezeigt. Im Folgenden wird erklärt, wie man private Pakete auf verdaccio veröffentlicht.

2. Erstellen Sie ein npm-Paket und laden Sie es in ein privates Repository hoch

Zuerst erstellen wir ein Test-npm-Paket und laden es in ein privates Repository hoch.

Verwenden Sie den Befehl npm init, um ein Paket zu erstellen.

Nachdem die Erstellung erfolgreich war, öffnen wir das Testverzeichnis und sehen, dass eine Datei package.json generiert wurde. Öffnen Sie den neu hinzugefügten Knoten publishConfig, um dieses Paket unter der Adresse http://127.0.0.1:4873 zu veröffentlichen:

{
  "Name": "@mylib/test",
  "version": "1.0.0",
  "Beschreibung": "lokales npm-Paket",
  "main": "index.js",
  "Skripte": {
    "test": "echo \"Fehler: kein Test angegeben\" && exit 1"
  },
  "Schlüsselwörter": [
    "prüfen"
  ],
  "Autor": "chenxin",
  "Lizenz": "ISC",
  "Konfiguration veröffentlichen": {
    "Registrierung": "http://127.0.0.1:4873"
  }
}

Erstellen Sie eine neue Datei index.js im Verzeichnis, in dem sich package.json befindet. Da das obige Hauptattribut index.js als Eintragsausführungsdatei des Pakets angibt, muss der Name wie folgt lauten: index.js

Da wir in der Verdaccio-Konfigurationsdatei angegeben haben, dass zum Veröffentlichen und Aufheben der Veröffentlichung von Paketen eine Anmeldung erforderlich ist, geben wir den folgenden Befehl ein, um einen Benutzer zu registrieren.

Das Obige bedeutet, dass die Registrierung erfolgreich war und die Anmeldung abgeschlossen ist. Da sich das aktuelle Verzeichnis genau in dem Verzeichnis befindet, in dem sich die Datei package.json des Pakets @mylib/test befindet, und die Datei package.json die Repository-Adresse angegeben hat, in der das Paket veröffentlicht werden soll, können wir den Befehl npm publish direkt verwenden, um das Paket @mylib/test im privaten Repository zu veröffentlichen. Nach erfolgreicher Veröffentlichung wird dies in der folgenden Abbildung angezeigt:

3. Suchen Sie beim Einrichten von npm-Installationspaketen in mehreren Repositorys

Durch Eingabe des Befehls:

npm-Konfigurationssatz @mylib:registry=http://127.0.0.1:4873

Der obige Befehl weist npm an, alle Pakete, die mit @mylib beginnen, von http://127.0.0.1:4873 zu laden.

4. Testen Sie, ob npm Pakete aus mehreren Repositorys gleichzeitig laden kann

Geben Sie den Befehl npm init ein, um eine package.json-Datei für ein Projekt zu erstellen

Geben Sie die folgenden beiden Befehle ein, um das jQuery-Paket bzw. das @mylib/test-Paket zu installieren, wobei das jQuery-Paket aus der externen Repository-Quelle geladen wird.

npm installiere jquery --save
npm installiere @mylib/test --save

An dieser Stelle können Sie sehen, dass node_modules bereits die beiden oben installierten Pakete enthält

Die Datei package.json enthält auch die Abhängigkeiten der beiden oben genannten Pakete

{
  "Name": "Testprojekt",
  "version": "1.0.0",
  "description": "Testprojekt",
  "main": "index.js",
  "Skripte": {
    "test": "echo \"Fehler: kein Test angegeben\" && exit 1"
  },
  "Schlüsselwörter": [
    "prüfen"
  ],
  "Autor": "chenxin",
  "Lizenz": "ISC",
  "Abhängigkeiten": {
    "@mylib/test": "^1.0.0",
    "jquery": "^3.6.0"
  }
}

Zu diesem Zeitpunkt löschen wir das Verzeichnis node_modules und geben die Befehlszeile ein (dieser Befehl muss in dem Verzeichnis ausgeführt werden, in dem sich package.json befindet):

npm init

Beobachten Sie, ob das Verzeichnis node_modules neu generiert wird und die beiden in package.json enthaltenen Pakete enthält. Wenn beide enthalten sind, bedeutet dies, dass npm bereits das gleichzeitige Laden von Paketen aus mehreren Repositorys unterstützt.

Dies ist das Ende dieses Artikels darüber, wie man npm so einstellt, dass Pakete aus mehreren Paketquellen gleichzeitig geladen werden. Weitere Informationen dazu, wie man npm so einstellt, dass Pakete aus mehreren Paketquellen gleichzeitig geladen werden, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So konfigurieren Sie inländische Spiegelressourcen + Taobao-Spiegel mit npm

<<:  Wie melde ich mich per Remote-Zugriff bei der MySql-Datenbank an?

>>:  Analyse der Verwendung des Linux-Schwachstellen-Scan-Tools lynis

Artikel empfehlen

JavaScript zum Implementieren der Anzeige von Suchdaten

In diesem Artikel wird der Datenanzeigecode für d...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.17 winx64

Windows-Installation mysql-5.7.17-winx64.zip Meth...

Detaillierte Erläuterung gängiger Methoden der Vue-Entwicklung

Inhaltsverzeichnis $nächsterTick() $forceUpdate()...

Detaillierte Erläuterung der Wissenspunkte zu Linux Netfilter/Iptables

Netzfilter Netfilter ist ein Paketverarbeitungsmo...

Einführung in die Verschlüsselung des Grub-Boot-Programms in Linux

Inhaltsverzeichnis 1. Was ist Grub-Verschlüsselun...

js realisiert 3D-Soundeffekte durch audioContext

In diesem Artikel wird der spezifische Code von j...

border-radius-Methode zum Hinzufügen abgerundeter Ränder zu Elementen

border-radius:10px; /* Alle Ecken sind mit einem ...

So beheben Sie den Fehler "ERROR 1045 (28000)" beim Anmelden bei MySQL

Heute habe ich mich beim Server angemeldet und mi...