Ejercicio react redux thunk

Utilizando la api de generar personas:

https://randomuser.me/documentation

Vamos a crear una aplicación de react con redux que utilice thunk que se irá componiendo de las siguientes fases:

Fase 1: Nos buscará 1 usuario y nos mostrará los siguientes datos: Foto, nombre completo, mail y dirección

Fase 2: Añadir un botón que nos cargue otro usuario al azar.

Fase 3: Al lado del botón tener un input en el que podamos indicar la cantidad de usuarios que queremos retornar.

Fase 4: Añadir al lado del botón si queremos hombres, mujeres o todos.

Fase 5: Añadir al lado un combobox con todas las nacionalidades o escoger alguna de las que nos permite la api

¡Ánimo!

Podemos pasar parámetros a las acciones de thunk.

Enlaces React-Redux

Ejemplo de Crud en castellano (es traducción de otro artículo):

https://www.ma-no.org/es/programacion/javascript/ejemplo-completo-de-crud-con-redux-y-react

Guía definitiva que incluye muchas cosas y está muy bien explicada:

React Redux Tutorial for Beginners: The Definitive Guide (2020)

Ejemplo de Redux con un enlace diferente entre el store y las props:

Redux example

Una aplicación sencilla con react y redux:

https://dev.to/creativetim_official/how-to-use-redux-in-reactjs-with-real-life-examples-4gog

Diferentes maneras de hacer dispatch de acciones en react-redux:

https://www.pluralsight.com/guides/different-ways-to-dispatch-actions-with-redux

Middlewares en react:

https://www.metaltoad.com/blog/overview-redux-middleware-react-applications

Tutorial completo React+Redux:

https://medium.appbase.io/part1-getting-started-with-react-and-nextjs-4f28a6a0c38e

Tutorial completo redux:

https://developer.okta.com/blog/2019/03/18/beginners-guide-to-redux

Consejos para mejorar rendimiento:

https://itnext.io/3-small-tips-for-better-redux-performance-in-a-react-app-9cde549df6af

Tutorial:

https://www.creative-tim.com/blog/tutorial/reactjs-redux-tutorials/

React-redux + hooks:

https://thoughtbot.com/blog/using-redux-with-react-hooks

Tutorial Redux:

https://www.tutorialspoint.com/redux/index.htm

React tutorial con redux:

https://www.javatpoint.com/react-redux-example

Introducción bien explicada de react+redux:

https://medium.com/javascript-in-plain-english/the-only-introduction-to-redux-and-react-redux-youll-ever-need-8ce5da9e53c6

Redux crud example:

https://www.techandstartup.com/tutorials/react-redux-crud-app

Crear un CRUD en 5 minutos:

Fullstack CRUD:

https://medium.com/swlh/fullstack-crud-application-using-fastify-react-redux-mongodb-part-1-9e8df39c6fff

Ejercicio entidad bancaria 2.0

Vamos a modificar el ejercicio anterior para añadir la siguiente funcionalidad:

En lugar de tener una variable donde se sumen las entradas y salidas tendremos sendos arrays de objetos donde guardaremos un objeto con la cantidad que hemos sacado y el momento en el que lo hemos hecho.

Al comprobar los límites de retirada o de ingreso lo haremos con respecto a las últimas 24 horas (para las pruebas podemos utilizar un intervalo menor)

En el tema de los ingresos que van a depósito pasadas esas 24 horas se añaden a la cuenta eliminándose de la lista.

Además de todo esto tendremos una lista con las 20 últimas operaciones que se mostrarán por pantalla.

Ejercicio React-Redux: Cuenta Bancaria

Vamos a hacer un ejercicio que simule una cuenta bancaria. Tendrá los siguientes elementos:

Saldo: 5.324,6 €

Cantidad: (input text)

Botones: |Hacer ingreso| |Sacar dinero|

El usuario puede poner una cantidad y si le da hacer ingreso se incrementa el saldo y si le da a sacar dinero se resta.

Con las siguientes condiciones:

Si el ingreso es mayor de 1000 € se suman solo 1000 € y el resto estará pendiente de ingreso (y lo mostraremos en el saldo al lado en color verde)

Si intentamos sacar más dinero del que hay en la cuenta se mostrará ‘Saldo insuficiente’.

Si sacamos dinero la cantidad se queda guardada y si queremos sacar más de 1000 € en una o varias operaciones nos saldrá un mensaje ‘Límite superado’

Los Diez Mandamientos del egoless programming

1. Entiende y acepta que cometerás errores. 
La cuestión es encontrarlos pronto, antes de que lleguen a producción. Afortunadamente, salvo para los pocos que desarrollan software de guiado de misiles, los fallos tienen raramente consecuencias fatales en nuestra industria, así que podemos, y deberíamos, aprender, reírnos, y seguir adelante.

2. Tú no eres tu código.
Recuerda que el objetivo de una revisión es encontrar problemas, y se encontrarán problemas. No te lo tomes personalmente cuando un error tuyo se descubra.

3. No importa cuánto “karate” sepas, siempre alguien sabrá más.
Esa persona puede enseñarte algunos movimientos nuevos si se lo pides. Busca y acepta información de otros, especialmente cuando piensas que no es necesario.

4. No reescribas código sin consultarlo antes.
Hay una fina línea de separación entre “corregir código” y “reescribir código”. Conoce la diferencia y realiza los cambios en el marco de una revisión de código, y no actuando como un justiciero solitario.

5. Trata a los que saben menos que tú con respeto, educación y paciencia.
La gente no técnica que trata con desarrolladores de forma frecuente casi siempre tienen la opinión de que en el mejor de los casos somos divas, y en el peor, llorones. No refuerces este estereotipo con ira e impaciencia.

6. La única constante en el mundo es el cambio.
Permanece abierto a ello y acéptalo con una sonrisa. Mira cada cambio a tus requisitos, plataforma o herramientas como un reto, no como un inconveniente contra el que hay que luchar.

7. La única autoridad real deriva del conocimiento, no de la posición.
El conocimiento genera autoridad, y la autoridad engendra respeto. Así que si quieres ser respetado en un entorno egoless, cultiva el conocimiento.

8. Lucha por lo que crees, pero acepta la derrota con deportividad.
Entiende que a veces tus ideas serán ignoradas. Incluso si resulta que estabas en lo cierto, no seas vengativo o digas “te lo dije” más de un par de veces, ni hagas de tu difunta idea una mártir o un grito de guerra.

9. No seas “ese tío de la habitación”.
No seas ese tío programando en una oficina oscura que emerge sólo para comprar coca-cola. Ese tío está fuera de la vista, del tacto, fuera de control y no tiene cabida en un entorno abierto y colaborativo.

10. Critica el código y no a la gente.
Sé amable con el desarrollador pero no con el código. Haz comentarios relacionados con los estándares locales, especificaciones de la aplicación, incrementos de rendimiento, etc.

Tutoriales react y redux

Conceptos de Redux (puros)

https://code.tutsplus.com/es/tutorials/getting-started-with-redux-why-redux–cms-30349

Ejemplo de app de contactos (incompleta):

https://code.tutsplus.com/es/tutorials/getting-started-with-redux-learn-by-example–cms-30350

Un ejemplo extenso:

https://www.valentinog.com/blog/redux/

Otro tutorial sencillo:

https://daveceddia.com/redux-tutorial/

Página oficial:

https://react-redux.js.org/introduction/quick-start