518 votes

Version globale de la CLI angulaire supérieure à la version locale

Lors de l'exécution de ng serve je reçois cet avertissement concernant le fait que ma version de l'interface de ligne de commande globale est supérieure à ma version locale. Je ne remarque aucun problème dans cet avertissement, mais je me demandais si les deux versions devaient être synchronisées? Aussi, est-il nécessaire d'avoir une version locale si vous avez une version globale?

L'avertissement:

Votre version globale de la CLI angulaire (1.1.1) est supérieure à votre version locale (1.0.6). La version locale de la CLI angulaire est utilisée.

649voto

R. Richards Points 12947

Pour répondre à une des questions, il est nécessaire d'avoir à la fois mondiale et locale pour installer les outils de travail.

Si vous essayez d'exécuter ng serve sur une application sans installation locale de la CLI (global installer uniquement), vous obtiendrez l'erreur suivante.

Vous devez être à l'intérieur d'un Angulaire de la CLI de projet afin d'utiliser le service de commande.

Il permettra également d'imprimer ce message:

Please take the following steps to avoid issues:
"npm install --save-dev @angular/cli@latest"

Exécuter qu' npm commande pour mettre à jour la CLI localement, et d'éviter l'avertissement que vous obtenez.

Autre question: On dirait qu'ils n' ont à être synchro, mais c'est probablement le meilleur qu'ils sont dans l'ordre pour éviter tout comportement inhabituel avec l'outil, ou toute incohérence avec le code de l'outil génère.

Pourquoi avons-nous besoin de l'installer, et une installation locale?

L'installation globale est nécessaire pour démarrer une nouvelle application. L' ng new <app-name> commande est exécutée à l'aide de l'installation globale de la CLI. En fait, si vous essayez d'exécuter ng new , tandis que l'intérieur de la structure de dossiers d'un CLI application, vous obtenez cette belle erreur:

Vous ne pouvez pas utiliser l' new de commande à l'intérieur d'un Angulaire de la CLI de projet.

D'autres commandes qui peuvent être exécutées à partir de l'installation globale sont ng help, ng get/set avec l' --global option, ng version, ng doc, et ng completion.

Le local d'installation de la ligne de commande est utilisé après que la demande a été construit. De cette façon, lorsque de nouvelles versions de la CLI sont disponibles, vous pouvez mettre à jour votre installation globale, et ne pas affecter l'installation locale. C'est bon pour la stabilité d'un projet. La plupart des ng des commandes n'a de sens avec la version locale, comme lint, build et serve, etc.

Selon la CLI GitHub readme, à la mise à jour de la CLI vous devez mettre à jour le global et le local package. Cependant, j'ai utilisé la CLI où le global et le local et la version varier sans aucun problème jusqu'à présent. Si j'ai jamais couru sur une erreur liées à avoir le global et le local de la CLI versions de synchronisation, je vais la poster ici.

208voto

BehrouzMoslem Points 2031

Voici comment j'ai résolu le problème.

Installer le dernier package CLI angulaire localement

Copier et exécuter ces commandes

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

66voto

hoogw Points 1047

Cela fonctionne pour moi: il mettra à jour la version locale à la dernière

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

pour vérifier la version

   ng --version
 

36voto

Saurabh Points 1871
 npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
 

Puis dans votre package de projet Local:

 rm -rf node_modules dist 
npm install --save-dev @angular/cli@latest
npm i 
ng update @angular/cli 
ng update @angular/core
npm install --save-dev @angular-devkit/build-angular
 

Devenait en dessous de l'erreur Erreur: fin inattendue de l'entrée JSON Fin inattendue de l'entrée JSON Les étapes ci-dessus ont été aidées à partir de cet article Impossible de mettre à jour angular en version 6

19voto

Montasir Mirghani Points 121
 npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
 

Votre configuration existante peut être mise à jour automatiquement en exécutant la commande suivante:

 ng update @angular/cli
 

ou:

 npm install
 

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