Bienvenidos al programa número 20 de FullStack Podcast. Vamos a hablar de REDUX con Angular, es decir, de la librería NgRx. Además, ya tienes disponible el podcast en mi canal de YouTube y también, como no, corre a unirte al canal de telegram del podcast!! https://t.me/fullstackpodcast
Ya hemos hablado de algunos patrones de diseño, como el programa 04, dedicado a MVC, pues en este caso le toca el turno a REDUX, te dejo un enlace a la documentación en español además, integrado con Angular mediante la librería NgRx
Si estáis interesados en ampliar este contenido os dejo aquí el enlace a una conferencia que di el año pasado en la Codemotion Madrid 2019 junto con Manuel Maldonado (CTO de Digital55) en el que muestro incluso un ejemplo de código bastante extenso
Voy a dejar aquí un pequeño resumen de este programa para que podáis recordar algunos conceptos clave, ya que el programa es bastante denso.
- Una única fuente de verdad – El estado contiene toda la información que usa la aplicación
- El estado es de solo lectura
- El cambios solo pueden usarse mediante funciones puras.
- Estado (store): Conjunto de datos que maneja la aplicación
- Acciones: Disparadores que generan los cambios en el estado de la aplicacion u otras acciones
- Efectos: Otras operaciones que disparan las acciones y que no tienen que ver con modificaciones de los datos en el store, por ejemplo, efectuar una llamada al Api, recibir los datos y desencadenar otras acciones en funcion de la respuesta recibida
- Reducers: Funciones puras que toman como parámetro el estado actual de la aplicación y devuelve un nuevo estado con las modificaciones aportadas.
Partes que usamos en el componente:
- Dispatchers: Lanzan acciones
- Selectors: Nos permiten enlazar nuestros componentes y vistas con distintas partes de la store (del estado de la aplicación)
Herramienta de la semana:
Y como siempre, ya sabes que puedes escribirme cuando quieras a [email protected], también puedes charlar conmigo en Twitter en @apcano1978 y por favor, te agradeceré eternamente los me gusta en iVoox y las valoraciones en iTunes
La entrada REDUX con Angular: NgRx aparece primero en .