Consulte los detalles de la actualización paso a paso de Angular 5 a Angular 6. Estos proporcionan detalles sobre los problemas que encuentra durante la actualización y cómo resolverlos.
- Actualice la versión de su nodo a 8 o superior e instale Angular cli más reciente globalmente por npm i -g @ angular / cli @ latest.
- Angular 6 usa angular.json como archivo de configuración en lugar de .anguar-cli.json. También se ha cambiado tslint. Consulte https://github.com/angular/angular-cli/wiki/angular-workspace para obtener los detalles de configuración más recientes. Tiene que mover cualquier configuración existente a un nuevo archivo de configuración.
- Para hacer esto, cree otro proyecto ficticio con el último cli usando ng new 'your-project' y los mismos valores predeterminados, como prefijo, estilo, etc., que utilizó anteriormente para su proyecto. Cree un nuevo proyecto con cli
https://github.com/angular/angular-cli/wiki/new
- Use
https://update.angular.io/ para verificar qué se ha cambiado desde su versión actual de Angular → Angular 6. Proporciona el uso de cómo cambiarlos / corregirlos.
- Siga los pasos anteriores y copie / actualice el archivo angular.json creado en el paso 2. Haga npm i en su proyecto para obtener todas las dependencias y realice la actualización de npm
- Ahora viene la gran parte. Actualización de RxJS y resolución de conflictos. RxJS ha estandarizado las importaciones de operadores y creadores observables con esta versión. Haga npm i -g rxjs-tslint y agregue la siguiente configuración de lint en tslint.json
{
"rulesDirectory": [
"node_modules/rxjs-tslint"
],
"rules": {
"rxjs-collapse-imports": true,
"rxjs-pipeable-operators-only": true,
"rxjs-no-static-observable-methods": true,
"rxjs-proper-imports": true
}
}
- Ahora ejecute lint --fix. Esto corrige algunos elementos, pero la mayoría de los problemas restantes se resaltarán y tendrá que solucionarlo manualmente.
Cambio de nombre de los operadores:
do -> tap,
catch -> catchError,
switch -> switchAll,
finally -> finalize
Todos los operadores se movieron a rxjs / operator
import { map, filter, reduce } from 'rxjs/operators';
Los métodos de creación observables se mueven a rxjs
import { Observable, Subject, of, from } from 'rxjs';
Estas listo. Bienvenido a Angular 6 :)
Consulte la publicación de mi blog aquí sobre cómo actualizar