Redux tutorial en español (Parte 2)

pedroparra
2 min readJan 2, 2016

--

Conociendo nuevos conceptos necesarios

Vamos a seguir aprendiendo Redux, y para ello en este tutorial, aprenderemos 3 conceptos de los más importantes de esta librería.

Actions

El estado de nuestra aplicación sólo cambiará si ejecutamos un action. Un action es un simple objeto plano de javascript que describe un cambio. Así como el state es la mínima representación de los datos de nuestra app, el action es la mínima representación del cambio en los datos.

Cualquier action deberá tener siempre una propiedad type, cuyo valor sea diferente a undefined. Cada app, tendrá definidas sus propios actions para describir los cambios en el estado de sus datos.

Funciones puras e impuras

Es importante conocer esta distinción ya que algunas de las funciones que vamos a escribir en redux son puras y es necesario que lo sean.

Funciones puras:

Son las que su valor retornado, depende exclusivamente de sus argumentos. Nunca cambian ó modifican el valor de sus argumentos y su comportamiento es fácilmente predecible y testeable. (Muy relacionado con la programación funcional)

Funciones impuras:

Por el contrario, estas funciones modifican los datos que se les pasan como argumentos.

La función reductora o reducer

El reducer es la función que tiene toda aplicación de redux, con la que se entrega siempre un nuevo estado de los datos, pasando como parámetros el state previo y el action a ejecutar.

Siempre que pasásemos como parámetro de la action, un valor que no estuviera definido, devolveríamos el mismo state que se entregó y si el state es undefined, devolveremos cero.

Este es uno de los principios de redux y es lo que hace que sea muy rápido, ya que siempre se crean nuevos objetos manteniendo las referencias que no hayan cambiado.

Fin del segundo capítulo

En el próximo capítulo, seguiremos hablando de redux y aprenderemos acerca de su store. Implementaremos todo lo aprendido en un ejemplo con react. Puedes verlo ya haciendo click aquí.

Te dejo por aquí el enlace al primer capítulo de este tutorial y gracias a todos por el apoyo recibido.

--

--