100 votes

Comment mettre à jour Angular CLI à la dernière version ?

Utilisation de ng --version J'ai eu :

@angular/cli : 1.0.0

qui n'est pas la dernière version disponible.

Comme Angular CLI est globalement installé sur mon système, j'ai essayé de le mettre à jour :

npm update angular-cli -g

Mais cela ne fonctionne pas, car il reste à la version 1.0.0.

1411voto

Shin Points 10934

Après avoir lu certains problèmes signalés sur le dépôt GitHub, j'ai trouvé la solution.

Afin de mettre à jour le paquet angular-cli installé globalement dans votre système, vous devez exécuter :

npm uninstall -g @angular/cli
npm install -g @angular/cli@latest

En fonction de votre système, vous devrez peut-être préfixer les commandes ci-dessus avec sudo .

En outre, il est fort probable que vous souhaitiez également mettre à jour la version locale de votre projet, car dans votre répertoire de projet, elle sera sélectionnée avec une priorité plus élevée que la version globale :

rm -rf node_modules
npm uninstall --save-dev @angular/cli
npm install --save-dev @angular/cli@latest
npm install

merci grizzm0 pour l'avoir signalé sur GitHub .

Après avoir mis à jour votre CLI, vous voudrez probablement mettez à jour votre version d'Angular aussi.

Note : si vous effectuez une mise à jour vers Angular CLI 6+ à partir d'une version plus ancienne, vous devrez peut-être lire le document suivant este .

Modifier : De plus, si vous étiez encore sur une version 1.x de la cli, vous devez convertir votre angular-cli.json a angular.json ce que vous pouvez faire avec la commande suivante (vérifier este pour plus de détails) :

ng update @angular/cli --from=1.7.4 --migrate-only

3 votes

Alerte pédante : vous pouvez trouver plus de détails sur les changements entre les versions dans l'onglet Releases sur GitHub. Lien : github.com/angular/angular-cli/releases

0 votes

Si vous rencontrez des problèmes en utilisant ces commandes, en particulier sur les machines Windows. Essayez d'ajouter l'indicateur --on-optional aux commandes npm install et uninstall.

18 votes

Mise à jour 2017 (npm@5) : si vous avez vraiment besoin de nettoyer votre cache : "npm cache clean --force".

251voto

SamYah Points 465

Utilisateurs pour la première fois :

npm install -g @angular/cli

Mise à jour/mise à niveau :

npm install -g @angular/cli@latest

Vérifiez :

ng --version

Voir documentation .

12 votes

Si vous ne voyez pas la nouvelle version après la mise à jour/mise à niveau, essayez de fermer et rouvrir le terminal et exécutez ng --version à nouveau

1 votes

Merci. @latest est-il encore nécessaire de procéder à une mise à niveau en 2021 ? Que se passe-t-il si j'ai déjà une ancienne version d'Angular CLI installée dans le monde entier et que je n'inclus pas l'extension @latest tag ?

0 votes

Oui faites cela et aussi en 2021 ou encore 2022 vous pouvez exécuter "npx @angular/cli@13 update @angular/core@13 @angular/cli@13" qui devrait vous amener à la version 13 d'Angular puisque Angular utilise maintenant TypeScript 4.4 et est la version 13. update.angular.io/?l=3&v=12.0-13.0

162voto

Dale Leung Points 126

ng6+ -> 7.0

Mise à jour de RxJS (dépend de RxJS 6.3)

npm install -g rxjs-tslint
rxjs-5-to-6-migrate -p src/tsconfig.app.json

Retirer rxjs-compat

Ensuite, mettez à jour les paquets de base et Cli :

ng update @angular/cli @angular/core

(Facultatif : mettre à jour Node.js à la version 10 qui est supportée dans NG7)

ng6+ (Cli 6.0+) Caractéristiques des commandes simplifiées

Tout d'abord, mettez à jour votre Cli

npm install -g @angular/cli
npm install @angular/cli
ng update @angular/cli

Ensuite, mettez à jour vos paquets de base

ng update @angular/core

Si vous utilisez RxJS, exécutez

ng update rxjs

Elle mettra à jour RxJS à la version 6 et installera le fichier rxjs-compat sous le capot.

Si vous rencontrez des erreurs de construction, essayez une installation manuelle de :

npm i rxjs-compat
npm i @angular-devkit/build-angular

Enfin, vérifiez votre version

ng v

Note sur la construction de production :

ng6 n'utilise plus intl en polyfills.ts

//remove them to avoid errors
import 'intl';
import 'intl/locale-data/jsonp/en';

ng5+ (Cli 1.5+)

npm install @angular/{animations,common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router}@next typescript@2.4.2 rxjs@'^5.5.2'
npm install typescript@2.4.2 --save-exact

Nota:

  1. La version de Typescript prise en charge pour Cli 1.6 à l'heure actuelle va jusqu'à 2.5.3.
  2. L'utilisation de @next met à jour le paquet vers la version bêta, si elle est disponible. Utilisez @latest pour obtenir la dernière version non bêta.

Après avoir mis à jour le paquet global et local, videz le cache pour éviter les erreurs :

npm cache verify (recommended)
npm cache clean (for older npm versions)

Voici les références officielles :

  1. Mise à jour de la Cli
  2. Mise à jour des paquets de base paquet de base .

4 votes

npm cache clean --force Cela m'a vraiment aidé

1 votes

Pourquoi cette partie ne figure-t-elle pas dans les notes de mise à jour ?

0 votes

Pouvez-vous confirmer ce que vous avez dit sur le fait que RxJS 6 est déprécié ? Partout où je regarde, il apparaît que la version 6 est la dernière version stable. github.com/ReactiveX/rxjs rxjs-dev.firebaseapp.com

50voto

BehrouzMoslem Points 2031

La commande puissante installe et remplace le dernier paquet.

J'ai eu un problème similaire. Je l'ai résolu.

 npm install -g @angular/cli@latest

et

npm install --save-dev @angular/cli@latest

enter image description here

0 votes

Ceci fonctionnera pour un CLI Angular local, vérifiez ma réponse pour mettre à niveau le CLI global

0 votes

Mis à jour mon cli global

41voto

wdavilaneto Points 61

Cette commande fonctionne bien :

npm upgrade -g @angular/cli

3 votes

Cela semble mettre à niveau le CLI vers la dernière version mineure.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X