Installieren einer bestimmten Version von Angular mit Angular Cli

77

Ich habe in Google und Angular CLI Doc gesucht, aber keine Möglichkeit gefunden, eine bestimmte Version von Angular mithilfe von Angular CLI zu installieren. ist es überhaupt möglich?

Sajad
quelle
3
Es gibt keinen direkten Weg, aber Sie können ein neues Projekt erstellen und dann einfach die Versionen in dem ändern package.json, was Sie wollen.
Dinistro
Sie können diese Antwort überprüfen stackoverflow.com/a/52067532/2275011 es hat bei mir funktioniert
Ferie

Antworten:

35

Sie können einfach package.json mit einer bestimmten Version haben und tun, npm installund es wird diese Version installieren. Außerdem müssen Sie sich nicht darauf verlassen angular-cli, um Ihr Projekt zu entwickeln.

Mario Petrovic
quelle
14
Sie sollten jedoch auf die CLI IMO angewiesen sein. Übrigens nicht mehr eckig, sondern angular/clijetzt. Es ist auchnpm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@latest
Ben Racicot
Wie Sie sagten, bearbeiten Sie die Datei package.json. Aber wo befindet sich diese Datei package.json?
Yagnesh bhalala
Sie fügen package.json automatisch hinzu, indem Sie npm init ausführen oder es manuell in Ihrem Stammordner des Projekts erstellen
Mario Petrovic
62

Um Ihre Frage zu beantworten, nehmen wir an, dass Sie an einer bestimmten Winkelversion und NICHT an einer bestimmten Winkel-Cli- Version interessiert sind (Winkel-Cli ist schließlich nur ein Werkzeug).

Ein reasonnable bewegen Ihr zu halten Winkel-cli Version mit alligned Winkelversion, sonst hat man in Inkompatibilitäten Probleme stolpern riskieren. Wenn Sie also die richtige Angular-Cli- Version erhalten, erhalten Sie die gewünschte Angular- Version.

Unter dieser Annahme geht es bei Ihrer Frage nicht um Angular-Cli , sondern um Npm .

Hier ist der richtige Weg:

[SCHRITT 0 - OPTIONAL] Wenn Sie sich nicht sicher sind, welche Angular-CLI - Version in Ihrer Umgebung installiert ist, deinstallieren Sie sie.

npm uninstall -g @angular/cli

Führen Sie dann run aus (Flag --force ist möglicherweise erforderlich).

npm cache clean

oder wenn Sie npm> 5 verwenden.

npm cache verify

[SCHRITT 1] Installieren Sie eine Angular-Cli- spezifische Version

npm install -g @angular/[email protected]

[SCHRITT 2] Erstellen Sie ein Projekt

ng new you-app-name

Die resultierende weiße App wird in der gewünschten Winkelversion erstellt .

HINWEIS: Ich habe keine Seite gefunden, auf der die Kompatibilitätsmatrix von Angular und Angular-Cli angezeigt wird . Ich denke, die einzige Möglichkeit zu wissen, welche Angular-Cli- Version installiert werden sollte, besteht darin, verschiedene Versionen auszuprobieren, ein neues Projekt zu erstellen und die package.jsonzu überprüfen, welche Angular- Version verwendet wird.

Winkelversionen Changelog Hier ist das Changelog aus der Github-Neupositionierung, in dem Sie die verfügbaren Versionen und die Unterschiede überprüfen können.

Ich hoffe es hilft

avi.elkharrat
quelle
Während Sie Ihren Schritten folgen, erhalten Sie während der npm-Installation -g @ angle-cli @ 1.7.4 einen Fehler wie diesen npm ERR! Ungültiger Paketname "@ angle-cli": Name darf nur URL-freundliche Zeichen enthalten
MPPNBD
2
@MPPNBD es sollte npm install -g @ angle / cli @ 1.7.4 sein
Esther Lalremruati
@ avi.elkharrat, Oh, tut mir leid, das habe ich verpasst. npm install -g @ angle / cli @ 1.7.4 hat bei mir funktioniert. Vielen Dank avi.elkharrat
MPPNBD
24

Bearbeiten # 2 (02.07.2017)

Wenn Sie die Angular-CLI jetzt installieren, haben Sie wahrscheinlich den neuen Namen Angular-CLI. @angular/cliSie müssen sie also mit deinstallieren

npm uninstall -g @angular/cli

und folgen Sie dem obigen Code. Ich bekomme immer noch positive Stimmen dafür, daher habe ich meine Antwort für diejenigen aktualisiert, die aus bestimmten Gründen die ältere Version verwenden möchten.


Bearbeiten Sie # 1

Wenn Sie wirklich ein neues Projekt mit einer früheren Version von Angular mithilfe der CLI erstellen möchten, versuchen Sie, die Angular-CLI vor der endgültigen Version herunterzustufen. Etwas wie:

npm uninstall -g angular-cli
npm cache clean
npm install -g [email protected]

Initiale

Sie können die Version des Winkels in der package.json ändern . Ich vermute, Sie möchten eine ältere Version von Angular verwenden, aber ich schlage vor, Sie verwenden die neueste Version. Verwenden von:

ng new app-name

wird immer die neueste Version von Angular verwenden.

brijmcq
quelle
1
Ich verwende einen BaaS-Anbieter, der ng4 immer noch nicht unterstützt.
Sajad
1
@ajad das ist unglücklich. Ich denke, Sie können eine frühere Version von Angular aus CLI erstellen. Ich werde meine Antwort bearbeiten
brijmcq
@brijmq Ich persönlich habe nie gesehen, dass angle-cli "immer die neueste Version von angle verwenden". Wenn Sie beispielsweise jetzt die CLI (1.1.3) global aktualisieren und damit ein neues Projekt erstellen, erhalten Sie Angular 4.0.0, obwohl die neueste Version 4.2.4 ist. Ich habe seit Ewigkeiten versucht herauszufinden, ob die Version regelmäßig mit neuen Cli-Versionen aktualisiert wird.
Jason Simpson
@epiphanatic mein schlechtes und Entschuldigung für die Verwirrung. Die CLI wird die neueste Version von Angular zu dem Zeitpunkt verwenden, als das CLI-Update durchgeführt wurde. Sie müssen es manuell auf Ihrer package.json in Ihrer App aktualisieren, wenn Sie es aktualisieren möchten. Die Veröffentlichung von Updates in Angular ist viel schneller als Angular-Cli. Werfen Sie einen Blick auf diesen Link, um mehr über anglejs.blogspot.com/2016/10/… zu erfahren . Hoffe, es klärt Ihre Verwirrung
brijmcq
Nur um hinzuzufügen, das npm cache cleanhat bei mir nicht funktioniert und ich musste verwendennpm cache clean --force
Kaloyan Stamatov
13

Die angular/cliVersionen und ihre installierten angular/compilerVersionen:

  • 1.0 - 1.4.x = ^ 4.0.0
  • 1.5.x = ^ 5.0.0
  • 1.6.x - 1.7.x = ^ 5.2.0
  • 6.x = ^ 6.0.0
  • 7.x = ^ 7.0.0

Kann durch eine Überprüfung der bestätigt werden angular/cli‚s - package.jsonDatei im Repository neueren Repository . Man müsste die spezifische CLI-Version installieren, um die spezifische Winkelversion zu erhalten:

npm -g install @angular/[email protected].* # For ^5.0.0
Robert Brisita
quelle
9

Geben Sie die gewünschte Version im Abschnitt "Abhängigkeiten" Ihrer package.json an und führen Sie diese in Ihrem Stammprojektordner in der Konsole / im Terminal aus:

npm install

Im Folgenden wird beispielsweise speziell v4.3.4 installiert

"dependencies": {
    "@angular/common": "4.3.4",
    "@angular/compiler": "4.3.4",
    "@angular/core": "4.3.4",
    "@angular/forms": "4.3.4",
    "@angular/http": "4.3.4",
    "@angular/platform-browser": "4.3.4",
    "@angular/platform-browser-dynamic": "4.3.4",
    "@angular/router": "4.3.4",
  }

Sie können der Versionsnummer auch die folgenden Modifikatoren hinzufügen, um zu variieren, wie spezifisch die Version sein soll:

caret ^

Aktualisiert Sie auf die neueste Hauptversion, wie durch die erste Nummer angegeben:

^4.3.0

lädt die neueste Version 4.xx, lädt jedoch nicht 5.xx.

Tilde ~

Aktualisieren Sie auf die neueste Nebenversion, wie durch die zweite Nummer angegeben:

~4.3.0

lädt die neueste Version 4.3.x, lädt jedoch nicht 4.4.x.

Chris Halcrow
quelle
9

Ja, es ist möglich, eine bestimmte Version von Angular mit npm zu installieren :

npm install -g @angular/[email protected]

Als Nächstes müssen Sie den Befehl ng new verwenden, um ein Angular-Projekt basierend auf der spezifischen Version zu erstellen, die Sie bei der Installation der CLI verwendet haben:

ng new your-project-name

Dadurch wird ein Projekt generiert, das auf Angular v8.3.19 basiert, der Version, die bei der Installation von Angular CLI angegeben wurde.

Otman Yazigh
quelle
5

Wenn Sie immer noch Probleme haben und nvm verwenden, stellen Sie sicher, dass Sie die nvm-Knotenumgebung festlegen.

Auswahl der zuletzt installierten Version. Um Versionen zu sehen, verwenden Sie nvm list.

nvm use node
sudo npm remove -g @angular/cli
sudo npm install -g @angular/cli

Oder um eine bestimmte Version zu installieren, verwenden Sie:

sudo npm install -g @angular/[email protected]

Wenn Sie Berechtigungsfehler dir verwenden, verwenden Sie:

sudo npm install -g @angular/[email protected] --unsafe-perm
MikeBRal
quelle
Danke, aber ich denke du antwortest ist irrelevant.
Sajad
5

Verwenden Sie den folgenden Befehl, um die spezifische Version zu installieren und herunterzustufen.
deinstalliere cli

npm uninstall -g @angular/cli

Npm-Cache bereinigen

 npm cache clean --force

installiere cli

npm install -g @angular/cli@_choose_your_version
Rajnikant Lodhi
quelle
4

npm i -g @angular/[email protected]

x, y, z -> Ihre gewünschte Versionsnummer

Swetha Sasanapuri
quelle
mit eckigen cli
Crusader
2

Führen Sie diesen Befehl an der Eingabeaufforderung aus, und Sie können loslegen

npm install -g @angular/cli@version_name
Prajwal Singh
quelle
0

Verwenden Sie den folgenden Befehl, um die spezifische Version zu installieren. Angenommen, Sie möchten Angular / CLI Version 1.6.8 installieren, und geben Sie dann den folgenden Befehl ein:

sudo npm install -g @angular/[email protected]

Dies wird installiert angular/cli version 1.6.8

Rohit Raghav
quelle
Beantwortet die Frage nicht.
Sajad
0

Ich würde vorschlagen, NVM zu verwenden, um verschiedene Versionen von Node und Npm beizubehalten und dann die kompatible Angular-CLI zu installieren

Anton Krosnev
quelle