Was bedeutet „falsche Peer-Abhängigkeit“ beim Installieren von Paketen mit Yarn?

Lesezeit: 3 Minuten

Benutzer-Avatar
schlaue Bohnen

Ich habe gerade geklont ein Repodie die Verwendung von empfiehlt Garn Abhängigkeiten zu installieren. Wenn ich laufe yarn installes scheint in Ordnung zu sein, aber es gibt diese Warnung:

yarn install v0.20.3
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
warning "[email protected]" has incorrect peer dependency "[email protected]^3.4.2".
[4/4] 📃  Building fresh packages...
✨  Done in 77.59s.

Ich habe online nachgesehen, um genau herauszufinden, was “hat falsche Peer-Abhängigkeit” bedeutet. Aber alles, was ich finden kann, sind gemeldete Probleme in anderen Repositories oder Fragen zur Behebung des Problems.

Kann jemand erklären, was das bedeutet und warum es nur eine Warnung und kein Fehler ist?

Ist es auch etwas, das ich versuchen sollte, die Community hinter dem Repo, das ich gerade geklont habe, anzusprechen oder ihr zu melden?

  • Mögliches Duplikat: stackoverflow.com/questions/46928390/…

    – Kalinda-Stolz

    16. Juni 2021 um 1:00 Uhr

Benutzer-Avatar
J Foley

Es ist nur eine Warnung, da es die Ausführung Ihres Codes nicht wirklich stoppt. Es dient nur dazu, Sie darauf hinzuweisen, dass mit Ihren Abhängigkeiten etwas nicht stimmt.

Tatsächlich sind Peer-Abhängigkeiten eine Möglichkeit für Pakete, anzugeben, “um mich zu verwenden, sollten Sie auch die x-Version des y-Pakets installiert haben”.

Sie sollten auf die neuesten Versionen aktualisieren, siehe hier Verknüpfung für weitere Details zu sass-Loader-Abhängigkeiten

  • In meinem Projekt habe ich: less: 3.0 und less-loader: 4.0.5 Eingerichtet. Beim Laufen webpack Ich bekomme: [email protected]" has incorrect peer dependency "[email protected]^2.3.1" Warum redet er [email protected] weil ich habe 4.0.5 Eingerichtet?

    – Legenden

    9. März 2018 um 13:45 Uhr

  • Es wird Ihren Code nicht daran hindern, ausgeführt zu werden? Das hängt zu 100% von der jeweiligen Abhängigkeit ab. Die einzige Zeit, in der diese Antwort wahr wäre, ist mit Abhängigkeiten, die zu 100 % abwärtskompatibel sind. Wenn zum Beispiel eckig, das von rxjs abhängt, von einer Funktion in rxjs abhängt, die in einer neuen Version entfernt wird, bedeutet diese Beschwerde, dass die App kaputt geht und sich nicht nur beschwert.

    – Derek Greer

    10. August um 21:25 Uhr

Benutzer-Avatar
Flip

Ich denke, dass es Pakete gibt, für die es keinen großen Unterschied macht (wenn es nicht in Ihrer App angezeigt wird oder es unwahrscheinlich ist, dass widersprüchliche Versionen Probleme verursachen, z. B. moment.js), aber dann gibt es Pakete wie React, für die es Es ist wichtig, dass alle React-Abhängigkeiten miteinander kompatibel sind, da sie möglicherweise Komponenten erstellen, die sich gegenseitig verstehen müssen.

In Ihrem Fall wird wahrscheinlich eine Ihrer Abhängigkeiten verwendet sass-loader in einer anderen Version, als Sie in Ihrem Projekt angeben.

Durch die Deklaration als peerDependency Sie können npm mitteilen, welche Version Ihr Projekt erwartet, und es gibt Ihnen eine Warnung (wie Sie gesehen haben), wenn es einen Konflikt gibt.

  • Ich habe mich gefragt, ob es heißt, dass die Informationen in den Paketen package.json eine falsche Abhängigkeit aufgelistet haben. Das ist, woher es seine Informationen bekommt, nicht wahr? Nur durch das Lesen von package.json-Dateien Es geht nicht darum, welche node_modules installiert sind, die nicht in package.json enthalten sind

    – Mäuse

    4. Mai 2021 um 2:30 Uhr


1229120cookie-checkWas bedeutet „falsche Peer-Abhängigkeit“ beim Installieren von Paketen mit Yarn?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy