Cómo actualizar Angular CLI a la última versión


Usando ng --version tengo:

@ angular / cli: 1.0.0

Que no es la última versión disponible.

Dado que tengo Angular CLI instalado globalmente en mi sistema, para actualizarlo intenté:

npm update angular-cli -g

Pero no funciona, porque permanece en la versión 1.0.0.

Author: Shin, 2017-05-12

10 answers

Después de leer algunos problemas reportados en el repositorio GitHub, encontré la solución.

Para actualizar el paquete angular-cli instalado globalmente en su sistema, necesita ejecutar:

npm uninstall -g angular-cli
npm cache clean or npm cache verify (if npm > 5)
npm install -g @angular/cli@latest

Dependiendo de su sistema, es posible que necesite prefijar los comandos anteriores con sudo.

Además, lo más probable es que también desee actualizar su versión local del proyecto, porque dentro de su directorio de proyecto se seleccionará con mayor prioridad que el global uno:

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

Gracias grizzm0por señalar esto en GitHub.

Después de actualizar su CLI, probablemente desee actualizar su versión Angular también.

Nota: si está actualizando a Angular CLI 6+ desde una versión anterior, es posible que deba leer esto.

 375
Author: Shin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-21 14:26:29

Recuerde actualizar sus paquetes principales después de la actualización de la Cli.

Ng6 +(Cli 6.0+) : cuenta con comandos simplificados

Primero, actualiza tu Cli

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

Luego, actualice sus paquetes principales

ng update @angular/core

Si utiliza RxJS, ejecute

ng update rxjs

Actualizará RxJS a la versión 6 e instalará el paquete rxjs-compat bajo el capó.

Si se encuentra con errores de compilación, pruebe con una instalación manual de:

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

Por último, compruebe su versión

ng -v

Nota sobre la compilación de producción:

Ng6 ya no usa 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 [email protected] rxjs@'^5.5.2'
npm install [email protected] --save-exact

Nota:

  1. La versión de Typescript soportada para Cli 1.6 en el momento de la escritura es hasta 2.5.3.
  2. Usando @next se actualiza el paquete a beta, si está disponible. Utilice @latest para obtener la última versión no beta.

Después de actualizar el paquete global y local, borre la caché para evitar errores:

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

Aquí están las referencias oficiales:

  1. Actualizando la Cli
  2. Actualizando los paquetes principales paquete principal.
 114
Author: Pageii Studio,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-23 09:32:54

Simplemente puede usar

npm install -g angular-cli - si es su primera vez

npm install -g @angular/cli@latest - si u ya está instalado, para actualizar

 33
Author: SamYah,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-11 19:41:57

El poderoso comando instala y reemplaza el último paquete.

Tuve un problema similar. Lo arreglé.

 npm install -g @angular/cli@latest

Y

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

introduzca la descripción de la imagen aquí

 20
Author: BehrouzMoslem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-10-10 12:46:29

Este comando funciona bien:

npm upgrade -g @angular/cli
 17
Author: wdavilaneto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-10-19 06:50:44

Además de @ShinDarth responder.

Hice lo que dijo, pero mi paquete no actualizó la versión angular, y sé que este post es sobre angular-cli, pero creo que esto también puede ayudar.

  • así que después de hacer lo que @ShinDarth dijo anteriormente, para arreglar mi versión angular tuve que crear un nuevo proyecto con -ng new projectname que generó un paquete.
  • copie el nuevo paquete, luego pegue el nuevo paquete en todos los paquetes de proyectos que necesitan actualización (recuerde agregar el dependencias que tenía y cambiar el nombre en la primera línea) o simplemente puede cambiar las versiones manualy sin copiar y pegar.
  • luego ejecuta -npm install.

Ahora mi ng serve está trabajando de nuevo, tal vez hay una mejor manera de hacer todo eso, si alguien sabe, por favor comparta, porque esto es un dolor de hacer con todos los proyectos que necesitan actualización.

 12
Author: Leonardo Souza Paiva,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-15 15:44:52

El siguiente enfoque funcionó para mí:

npm uninstall -g @angular/cli

Luego

npm cache verify

Luego

npm install -g @angular/cli@latest

Trabajo en Windows 10, a veces tuve que usar: npm cache clean --force también. No es necesario hacerlo si no tiene ningún problema durante la instalación.

 7
Author: Enayat Rajabi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-25 14:14:51

Para actualizar Angular CLI a una nueva versión, debe actualizar tanto el paquete global como el paquete local de su proyecto.

Paquete global:

npm uninstall -g @angular/cli
npm cache clean
# if npm version is > 5 then use `npm cache verify` to avoid errors (or to avoid using --force)
npm install -g @angular/cli@latest

Paquete de proyectos locales:

rm -rf node_modules dist # use rmdir /S/Q node_modules dist in Windows Command Prompt; use rm -r -fo node_modules,dist in Windows PowerShell
npm install --save-dev @angular/cli@latest
npm install

Fuente: Github

 6
Author: Hasan Fathi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-17 06:39:02

Todo lo que necesita hacer es diff con angular-cli-diff y aplicar los cambios en su proyecto actual.

Aquí están los pasos:

  1. Digamos que vas desde 1.4. a 1.5 entonces haces https://github.com/cexbrayat/angular-cli-diff/compare/1.4.0...1.5.0
  2. haga clic en la pestaña File changed
  3. Aplique los cambios a su proyecto actual.
  4. npm install / yarn
  5. Prueba todo npm scripts (más detalles aquí: https://stackoverflow.com/a/45431592/415078 )
 4
Author: Kuncevič,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-03 04:53:11

En mi caso, he instalado angular-cli localmente usando npm install save save-dev angular-cli. Por lo tanto, cuando uso el comando npm install - g @angular / cli, genera un error que dice que " Su versión global de Angular CLI (1.7.3) es mayor que su versión local(1.4.9)". Tenga en cuenta que angular-cli, @angular/cli y @angular/cli@latest son dos cli diferentes. Lo que resuelve esto es desinstalar toda la cli y luego instalar la última cli angular usando npm install-g @angular/cli @ latest

 3
Author: ARKhan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-05 07:48:06