Diese Antwort gilt nicht für alle Fälle. Wenn Sie den Fehler jedoch nicht durch einfaches Eingeben beheben können npm install
, können diese Schritte hilfreich sein.
Nehmen wir an, Sie haben diesen Fehler erhalten.
UNMET PEER DEPENDENCY packageA@4.2.0
npm WARN packageB@3.3.0 requires a peer of packageA@^3.1.0 but none was installed.
Dies bedeutet, dass Sie Version 4.2.0 von packageA installiert haben, packageB@3.3.0 jedoch Version 3.xx von pakageA benötigt. ( Erklärung von ^ )
Sie können diesen Fehler also beheben, indem Sie packageA auf 3.xx herabstufen. Normalerweise möchten Sie das Paket jedoch nicht herabstufen.
Die gute Nachricht ist, dass packageB in einigen Fällen einfach nicht mit packageA Schritt hält und der Betreuer von packageB versucht, die Peer-Abhängigkeit von packageA auf 4.xx zu erhöhen.
In diesem Fall können Sie überprüfen, ob es eine höhere Version von packageB gibt erfordert Version 4.2.0 von packageA in npm oder github.
Beispiel: Gehen Sie zur Release-Seite
Oft finden Sie bahnbrechende Änderungen in Bezug auf solche Abhängigkeiten.
packageB v4.0.0-beta.0
BREAKING CHANGE
package: requires packageA >= v4.0.0
Wenn Sie auf der Release-Seite nichts finden, gehen Sie zur Ausgabeseite und suchen Sie das Problem nach Schlüsselwörtern wie peer
. Möglicherweise finden Sie nützliche Informationen.
Zu diesem Zeitpunkt haben Sie zwei Möglichkeiten.
1) Aktualisieren Sie auf die gewünschte Version
2) Lassen Sie den Fehler vorerst und warten Sie, bis die stabile Version veröffentlicht ist.
Wenn Sie Option 1 wählen:
In vielen Fällen hat die Version kein latest
Tag und ist daher nicht stabil. Sie müssen also überprüfen, was sich in diesem Update geändert hat, und sicherstellen, dass nichts kaputt geht.
Wenn Sie Option 2 wählen:
Wenn das Upgrade von pakageA von Version 3 auf 4 trivial ist oder wenn der Betreuer von pakageB Version 4 von pakageA noch nicht getestet hat, aber sagt, dass dies kein Problem sein sollte, können Sie den Fehler möglicherweise in Betracht ziehen.
In beiden Fällen ist es am besten, gründlich zu testen, ob nichts kaputt geht.
Wenn Sie wissen möchten, warum Sie so etwas manuell ausführen müssen, wird dieser Link gut erklärt.