Heim  >  Artikel  >  Web-Frontend  >  Wie kann man abhängige Bibliotheken in node_modules elegant ändern? Methodeneinführung

Wie kann man abhängige Bibliotheken in node_modules elegant ändern? Methodeneinführung

青灯夜游
青灯夜游nach vorne
2022-01-31 09:00:312795Durchsuche

nodeWie kann man die abhängigen Bibliotheken von node_modules im Projekt elegant ändern? Der folgende Artikel zeigt Ihnen, wie Sie die abhängigen Bibliotheken in node_modules elegant ändern können. Ich hoffe, er ist hilfreich für Sie!

Wie kann man abhängige Bibliotheken in node_modules elegant ändern? Methodeneinführung

Ich habe kürzlich ein Open-Source-Projekt innerhalb des Unternehmens verwendet (nicht für MR-Geschäftsänderungen geeignet) und muss einfach den Quellcode von @tencent/wuji-server-lite ändern. json lautet wie folgt:

"dependencies": {     
  "@tencent/taf-config": "^2.0.4",    
  "@tencent/wuji-server-lite": "2.0.30",     
  "patch-package": "^6.2.0"  
}

Im Allgemeinen haben wir zwei Ansätze:

  • Methode 1: Ändern Sie den Namen des geänderten Codes, verpacken Sie ihn neu und senden Sie ihn an tnpm und verweisen Sie dann direkt auf dieses neue Paket

  • Methode 2: Verschieben Sie die Codekopie als lokale Abhängigkeit aus node_modules

Egal welche der oben genannten Methoden verwendet wird, als Codefreak fühle ich mich sehr unwohl, wenn ich in einer bestimmten Zeit eine oder zwei Codezeilen geändert habe Datei, aber ich musste das gesamte Projekt auf so aufgeblähte Weise kopieren, noch mehr. Das Schreckliche ist, dass man am Ende möglicherweise vergisst, was man geändert hat, und es keinen Unterschied gibt, den man zurückverfolgen kann.

Ich habe damals mehrere NodeJS-Benutzer konsultiert, als ich nodejs nicht verwendet habe. Hatte NodeJS beispielsweise eine bestimmte Datei angegeben? wird durch ein anderes lokales ersetzt? Die Antwort ist nein.

Plötzlich hatte ich die Idee, ein npm-Paket zu erstellen, um ein solches Problem selbst zu lösen, und habe dann wie üblich im Voraus gegoogelt, nur um festzustellen, dass es so etwas bereits gab, genannt Patch-Paket (https://www .npmjs.com/package/patch-package), es scheint, dass die Veröffentlichungszeit vor zwei Jahren lag, wenn ich das mobile Chicken-Spiel nicht zur Hälfte gemacht hätte, wäre diese Bibliothek vielleicht überhaupt von mir erstellt worden, haha.

Da ich das Rad nicht neu erfinden muss, möchte ich Ihnen erklären, wie man es verwendet.

1. Lokale Installation, npm i patch-package

2. Fügen Sie { „postinstall“: „patch-package“ } zu den Skripten von package.json hinzu, das nach dem abhängigen installiert wird Paket ist installiert. Führen Sie den Code in „node_modules“ aus Ergebnis Ihrer Änderung

Schließlich gibt es auf der offiziellen Website dieser Bibliothek einen sehr detaillierten Vergleich, der beschreibt, wann Patch und wann Fork verwendet werden sollten. Die Beschreibung ist sehr genau:

Wie kann man abhängige Bibliotheken in node_modules elegant ändern? Methodeneinführung

Für weitere Knoten -bezogenes Wissen finden Sie unter:

nodejs-Tutorial

!

Das obige ist der detaillierte Inhalt vonWie kann man abhängige Bibliotheken in node_modules elegant ändern? Methodeneinführung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:zhihu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen