Novedades en Angular 8.
Introducción y Objetivos del curso
Migrando de Angular 7 a Angular 8
¿Qué es Ivy?
Differential loading
Dynamic import
CLI Builders
Arquitectura en Angular
Presentación del proyecto
Patrón LIFT (Locate, Identify, Flat and Try DRY) y Naming
Aplicando el patrón: Smart and Dumb components
Manejo del estado en la aplicación
Implementando Short imports con Typescript
HttpClient
Evitando doble subscribe
Tipado en peticiones
Manejo de errores
Manejo de errores con sentry
Uso de retry() para reintentar una petición
Creando un interceptor para Auth
Creando interceptores en http
Enviendo Token con interceptores
Unit Tests
Preparación de entorno de pruebas
Pruebas a providers y servicios HTTP
Reporte con Coverage
Puesta a producción.
Deploy con NGINX y Docker
AOT: Compilación de alto nivel
Conclusiones
Conclusión
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 31
Preguntas 8
se necesita un curso de rxjs…
Si realmente necesitamos un curso de rxjs con angular
se necesita un curso de rxjs…
Totalmente de acuerdo con martin, es una deuda vieja que tienen
se necesita un curso de rxjs…
Un curso de Rxjs y Ngrx
se necesita un curso de angular con rxjs, ionic con rxjs y ionic con capacitor
Se echa en falta un curso de RXJS en Angular y otro de Redux en Angular
la magia la hace rxjs, si pues, seria bueno un curso de rxjs con angular
No es una muy buena practica el anidamiento de subscribe al momento de hacer una petición HTTP, debido que nos lleva a un callback hell y esto no escalable y es poco mantenible.
Para evitar este anidamiento utilizaremos observables de rxjs y un operador llamad “switchmap”.
Lo que hace este operador cambia de un observable a otro trayéndonos el resultado del observable anterior (tal es el caso en js usando promise.then o async await por dar un ejemplo"
Ejemplo:
ngOnInit(): void {
this.product$ = this.route.params.pipe(
switchMap((params: Params) => {
return this.productService.getProduct(params.id);
})
);
}
Donde “product$” es un observable:
product$: Observable<Product>;
de este modo podemos hacer una petición a nuestro routing del id del producto y posteriormente hacer un consumo del producto buscado en nuestro template, usando observables.
<div *ngIf="(product$ | async) as product">
Deberían sacar un curso de RxJs con angular en platzi
Esto es excelente como para un carrousel que sea en base a Lazy Loading…
Se necesita el curso de RxJS si no cuesta entender del todo el concepto.
En definitiva, switchMap es una operación que permite “switchear” un Observable (Params, en el primer caso) por otro Observable (Product, en el segundo caso), dentro de un flujo de datos que pase por una cadena de operaciones (pipes).
.
De esta manera, podemos ejecutar una función utilizando un Observable anterior, y devolver un Observable nuevo, en un solo paso. Cada vez que switchMap reciba un dato, este se cancelará y aparecerá el nuevo observable, por lo tanto, no sirve en el caso de que haya más de un flujo de datos.
.
(ver https://www.learnrxjs.io/learn-rxjs/operators/transformation/switchmap)
.
Antes, haciamos una operación con un Observable, y el resultado si o si lo teníamos que leer con un subscribe para luego pasarlo a una función. Esto no es práctico porque la suscripción queda andando y nunca se cierra.
.
Con este método, tenemos mayor flexibilidad para generar cadenas de funciones que procesen nuestros Observables, consecutivamente. Así como está este map, hay otros map con otras características, como mergeMap, por ejemplo.
Que buena explicacion en serio que buen curso, se enseñan buenas practicas
Según documentación el swicthMap cancela la petición anterior en caso que sea demorada, que tan cierto es esto ?
Recomiendo mucho ver el siguiente video para profundizar un poco mas en las estrategias para aplanar subscriptions de RXJS
https://www.youtube.com/watch?v=sxjpUNRU_tI&list=PL4vWncexIMYuvT5oCCGpShrRoM0hizLky&index=2
En esta linea *<div ngIf="(product$ | async) as product"> por que as crea la varaible product? no se supone que as sirve para castear?
Coincido con los comentarios, seria muy util un curso de Rxjs en Angular
Definitivamente hace falta un curso de RxJs en Angular.
Sin duda alguna seria excelente contar con un Curso de RxJS en esta carrera.
Excelente clase!
Alguien me puede ayudar con esto, me da un error pero no se porque, tengo el mismo codigo que el profesor pero aún así me da un error por un Observable<Unknown>
Recomiendo ver 2 veces este video se entiende mucho mejor 😄 .
Un curso de Rxjs y Ngrx
😛
como puede hacer que mi menu lateral desplegable se mantenga asi ,cuando vaya a otra url con routerlink , dentro del proyecto angular , claro si tengo menu con submenus . (puedes mostrar un ejemplo) por favor
Que bonito es lo bonito!
bajo este modo, cual seria la mejor forma de controlar la visivilidad de un spinner una vez que los datos se hayan cargado?
Genial esta clase, este concepto es muy importante y necesario en las buenas pràcticas de programaciòn
Curso de RXJS
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.