Instalar o migrar a Angular 15 馃叞

Publicado el 25.11.2022 a las 06:42

Instalar o migrar a Angular 15 馃叞

  1. 驴Qu茅 trae nuevo Angular 15?

    • Interceptors como funciones

    • Standalone components

    • 驴Y los ficheros environment?

    • Directiva para optimizaci贸n de im谩genes

  2. 驴C贸mo sabemos con qu茅 versi贸n de Angular estamos trabajando?

    • Con el package.json

    • Ejecutando la aplicaci贸n

    • Con el CLI

  3. 驴C贸mo actualizar/migrar a Angular 15?

  4. Actualizar Angular CLI globalmente

  5. Posibles errores

    • Package '@angular/core' is not a dependency

  6. Cuando todo falla

Logo de fjmduran

Instalar o migrar a Angular 15 馃叞

驴Quieres instalar Angular 15?, 驴quieres actualizar o migrar a Angular 15?, 驴quieres saber qu茅 trae esta nueva versi贸n de Angular?

驴Qu茅 trae nuevo Angular 15?

Interceptors como funciones

Ahora es posible a帽adir interceptor como una funci贸n, no es necessario hacerlo como una clase, aunque sigue siendo v谩lido hacerlo como clase.

Standalone components

La verdad es que esta funci贸n ya la tra铆a la versi贸n 14, pero era experimental.


Con la versi贸n 15 de Angular se confirma que los componentes standalone han venido para quedarse.


Puedes leer a profundidad en mi siguiente art铆culo 馃憞

Imagen del art铆culo

Componentes standalone en Angular 馃叞

驴Se ha rendido Angular ante React?

驴Y los ficheros environments?

Cuando creas un proyecto desde 0 con Angular 15 no se crear谩n los famosos environment.ts y environment.prod.ts.


No me gusta, porque me obliga a crearlos manualmente, pero en fin.

Directiva para optimizaci贸n de im谩genes

A煤n no la he podido estudiar en profundidad, pero tiene muy buena pinta.


Consulta esta directiva en la documentaci贸n oficial.

驴C贸mo sabemos con qu茅 versi贸n de Angular estamos trabajando?

Podemos ver qu茅 versi贸n de Angular es con la que estamos trabajando de las varias formas 馃搩

Con el package.json

Abriendo el package.json, en la secci贸n de las dependencias encontraremos el Angular Core y ah铆 podremos ver la versi贸n de Angular

"@angular/animations": "~14.0.0",
"@angular/cdk": "^14.0.3",
"@angular/common": "~14.0.0",
"@angular/compiler": "~14.0.0",
"@angular/core": "~14.0.0"

Ejecutando la aplicaci贸n

Ejecutando la aplicaci贸n y en con las herramientas de depuraci贸n del navegador, podremos ver en la inspecci贸n de elementos el ng-version

<app-root _nghost-serverapp-c137="" ng-version="15.0.0">...

Con el CLI

Ejecutando el comando ng version en la consola en el directorio de trabajo, ello te facilitar谩 toda la informaci贸n de tu proyecto de Angular

驴C贸mo actualizar/migrar a Angular 15?

Voy a seguir las recomendaciones del equipo de Angular en su documentaci贸n


Para actualizar mi aplicaci贸n de Angular 14 a Angular 15 que incluye Angular Material seguir茅 los siguiente pasos:

  1. ng update @angular/core @angular/cli
  2. ng update @angular/material

Actualizar Angular CLI globalmente

Te recomiendo actualizar tu Angular CLI de manera global y as铆, cada vez que crees un proyecto nuevo lo har谩s con la 煤ltima versi贸n de Angular

    Para actualizar Angular CLI de forma global sigue los siguientes pasos:
  1. Desinstala Angular CLI

    npm uninstall -g @angular/cli
  2. Limpia el cache de npm, y as铆 cuando instalemos la nueva versi贸n de Angular CLI nos aseguramos de que est谩 limpia

    npm cache clean --force
  3. Instala la 煤ltima versi贸n estable de Angular CLI

    npm i -g @angular/cli
  4. Comprueba que se ha instalado la 煤ltima versi贸n

    ng version

Puedes encontrar m谩s informaci贸n acerca de Angular CLI en su p谩gina oficial de npm

Posibles errores

Package '@angular/core' is not a dependency

Es posible que no tengas la carpeta node_modules debido a que has clonado el repositorio. Para solventarlo instala las depencias de proyecto con:

npm install

Cuando todo falla

Cuando todo falla, el procedimiento que uso es:

  1. Crear un nuevo proyecto con el Angular CLI actualizado a la versi贸n de Angular que quiero
  2. Eliminar la carpeta node_modules
  3. Eliminar el fichero package-lock.json
  4. Modificar las dependencias de mi proyecto de Angular que quiero migrar copiando las versiones del proyecto creado nuevo
  5. Instalar dependencias con npm install

No es lo m谩s r谩pido, pero funciona.


Las depencias que te recomiendo para Angular 15 son:

"dependencies": {
    "@angular/animations": "^15.2.0",    
    "@angular/common": "^15.2.0",
    "@angular/compiler": "^15.2.0",
    "@angular/core": "^15.2.0",
    "@angular/forms": "^15.2.0",
    "@angular/material": "^15.2.9",
    "@angular/platform-browser": "^15.2.0",
    "@angular/platform-browser-dynamic": "^15.2.0",
    "@angular/router": "^15.2.0",
    "@angular/service-worker": "^15.2.0",
    "firebase": "^9.20.0",
    "chart.js": "^3.9.1",
    "file-saver": "^2.0.5",
    "ng2-charts": "^4.1.1",
    "rxjs": "~7.8.0",
    "tslib": "^2.3.0",
    "zone.js": "~0.12.0"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^15.2.6",
    "@angular/cli": "~15.2.6",
    "@angular/compiler-cli": "^15.2.0",
    "@types/file-saver": "^2.0.5",
    "@types/jasmine": "~4.3.0",
    "jasmine-core": "~4.5.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.0.0",
    "typescript": "~4.9.4"
  }
            

Hasta luego 馃枛