2017-05-18 3 views
1

Ja, ich weiß, dass es bereits Tausende von ähnlichen Fragen gibt - Und nein, keine der Antworten hat bei mir funktioniert. Ich hatte bereits vor einiger Zeit ein Problem mit der Aktualisierung meines Angulars und entschied mich einfach, die neuen Updates zu ignorieren.Upgrade auf Angular4 nicht möglich

Anfangs habe ich verwendet, um den "Standard" Upgrade-Befehl: npm install @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] @angular/[email protected] [email protected] --save Das aber in dem folgenden Fehler führte (+ Viele Warnungen am Ende):

+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- UNMET PEER DEPENDENCY @angular/[email protected] 
+-- @angular/[email protected] invalid 
| +-- @angular/[email protected] 
| | `-- [email protected] 
| `-- [email protected] 
+-- UNMET PEER DEPENDENCY @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
| +-- [email protected] 
| `-- [email protected] 
+-- @angular/[email protected] 
+-- [email protected] 
| +-- @angular-cli/[email protected] 
| | `-- [email protected] 
| +-- UNMET PEER DEPENDENCY @angular/[email protected] 
| +-- UNMET PEER DEPENDENCY @angular/[email protected] 
| | `-- @angular/[email protected] 
| +-- UNMET PEER DEPENDENCY @angular/[email protected] 
| `-- [email protected] 
+-- [email protected] invalid 
`-- UNMET PEER DEPENDENCY [email protected] 

Okay, keine große Sache, Eine schnelle Google-Suche hat mir (noch einmal) gesagt, dass ich einfach jede unerfüllte Peer-Abhängigkeit selbst installieren soll. Das Problem: Egal welche der Peer-Abhängigkeiten, die nicht erfüllt sind, versuche ich zu installieren, bekomme ich Peer-Abhängigkeiten Unmet-Fehler. Beispiel: Der erste Befehl hat mir gesagt, dass die zone.js-Abhängigkeit nicht erfüllt ist. So lief ich schnell npm install [email protected], und bekomme die Fehlermeldung mit ein paar unerfüllten Abhängigkeiten, einschließlich Pakete wie @ angular/core zum Beispiel, die, wenn ich versuche, sie zu installieren, sagen Sie mir, dass unter den nicht erfüllten Abhängigkeiten zone.js ist.

Grundsätzlich: Die Abhängigkeiten scheinen voneinander abhängig zu sein, und ich kann keine von ihnen installieren. Mein Paket.json wurde korrekt aktualisiert, wobei alle Paketversionen so angezeigt werden, wie sie sein sollten, aber ich kann mein Projekt nicht ausführen, da die Pakete nicht installiert sind.

Die einzige Lösung, die ich noch nicht ausprobiert habe, ist die vollständige Neuinstallation von Angular - was ich möglichst vermeiden möchte.

Also, in Anbetracht, dass alles in Bezug auf package.json nicht funktioniert (Löschen, Entfernen der Versionen, ...) und ich kann nicht die Abhängigkeiten, die als nicht gefunden werden installiert sind, was genau sollte ich tun, um Angular richtig zu aktualisieren ?

Antwort

2

Ich habe ähnliche Probleme mit etwas, das wie zirkuläre Paketabhängigkeiten scheint, so dass ich Ihren Schmerz fühle. Ich würde empfehlen, Garn versuchen https://yarnpkg.com/en/, es hat mir sehr geholfen.

  1. Installieren Garn https://yarnpkg.com/en/docs/install
  2. löscht node_modules Ordner in Ihrem Projekt
  3. Im gleichen Ordner mit Ihrem package.json run 'Garn'. Dies wird alle alten Versionen Ihrer Pakete installieren, einschließlich Angular 2.
  4. Dann führen Sie "Garn-Upgrade". Dies sollte die neueste Version aller Pakete, einschließlich Angular 4, mit den richtigen Abhängigkeiten installieren.
+0

Vielen Dank für Ihre Antwort. Ich werde das jetzt ausprobieren, und ich werde hier zurückkommen! – user2065501

+0

Seltsam, ich habe versucht, das zu tun, und dann habe ich einen Fehler, dass ich im Winkel-Cli sein muss. Ich habe dann meine devDependencies mit einem Befehl aktualisiert, den ich online gefunden habe, und mir wurde mitgeteilt, dass mein environmentSource-Eintrag nicht gefunden wurde. Das wurde behoben, und jetzt bekomme ich den Fehler, dass mein AppModule kein NgModule ist und einige komplizierte Sachen danach. Was denkst du soll ich tun? – user2065501

+0

Nevermind, ich habe es funktioniert, indem Sie die node_module entfernen und neu installieren! – user2065501