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-Closures erklärt

Inhaltsverzeichnis 1. Was ist ein Abschluss? 2. D...

MySQL-Gruppierungsabfragen und Aggregatfunktionen

Überblick Ich glaube, dass wir häufig auf solche ...

Lernen Sie schnell die MySQL-Grundlagen

Inhaltsverzeichnis SQL verstehen SELECT verstehen...

js behandelt die Kontoabmeldung beim Schließen des Browsers

Inhaltsverzeichnis Klassischer Ansatz Frage Weite...

PHP geplante Backup MySQL und mysqldump Syntax-Parameter detailliert

Lassen Sie uns zunächst einige gängige Anwendungs...

JavaScript zum Erzielen eines Vollbild-Seiten-Scrolleffekts

Nachdem ich mit der Lektüre von JavaScript DOM fe...

Verwendung der hasOwnProperty-Methode des js-Attributobjekts

Die Methode hasOwnProperty() des Objekts gibt ein...