Zustand, más fácil que Redux (junto con Typescript)
Redux ha sido la herramienta de gestión de estado dominante en el ecosistema de React durante muchos años. Sin embargo, su curva de aprendizaje empinada y la cantidad de código necesario para realizar tareas simples han llevado a muchos desarrolladores a buscar alternativas más sencillas y eficientes.
Una de esas alternativas es Zustand. Zustand es una biblioteca de gestión de estado para React que se describe a sí misma como “pequeña, rápida y reactiva”. A diferencia de Redux, Zustand tiene un API más sencillo y menos boilerplate, lo que lo hace más fácil de aprender y utilizar.
Beneficios de usar Zustand
- Más fácil de aprender y utilizar que Redux: Con una API menos verbosa y una curva de aprendizaje más suave, Zustand es una excelente opción para desarrolladores que buscan una forma más sencilla de gestionar el estado en sus aplicaciones de React.
- Menos boilerplate: Con Redux, a menudo se necesita escribir una gran cantidad de código boilerplate para realizar tareas simples. En cambio, Zustand permite definir un estado y funciones reductoras con solo unas pocas líneas de código.
- Integración con Typescript: Zustand se integra perfectamente con Typescript, lo que significa que puedes aprovechar la potencia de la comprobación de tipos estática en tu aplicación.
- Rendimiento: Zustand se jacta de ser rápido y eficiente en términos de rendimiento, lo que lo hace ideal para aplicaciones que necesitan gestionar grandes cantidades de estado de forma eficaz.
Cómo usar Zustand junto con Typescript
Para utilizar Zustand con Typescript, simplemente define tu estado y las funciones reductoras que lo modifican utilizando tipos de TS. Por ejemplo:
{` import create from 'zustand'; interface AppState { count: number; increment: () => void; decrement: () => void; } const useStore = create((set) => ({ count: 0, increment: () => set((state) => ({ count: state.count + 1 })), decrement: () => set((state) => ({ count: state.count - 1 })), })); `}
En este ejemplo, definimos un estado que contiene un contador y dos funciones para incrementar y decrementar el contador. Al utilizar tipos de TS, obtenemos la comprobación de tipos estática y el autocompletado de IDE, lo que hace que trabajar con estado sea mucho más seguro y cómodo.
Conclusión
En resumen, Zustand es una alternativa eficiente y fácil de usar a Redux, especialmente cuando se combina con Typescript. Con su API sencilla, integración con Typescript y rendimiento sólido, es una gran opción para desarrolladores que buscan simplificar la gestión del estado en sus aplicaciones de React.
Siempre odie react por su complejidad con redux, pero ahora con zustand ha cambiado el panorama empieza a llamarme. De nuevo usar react
Bien explicado Fazt, aprendo bastante con tus tutoriales muchas gracias.
redux me da asco, zustand me hace querer programar frontend
Gracias!!
Crea uno pero con next 13.4! porfavor
es bastante parecido a Pullstate, de echo pullstate es mucho mas facil de utilizarlo y hace lo mismo
Hola @fazt, aun me pregunto porque se ve 2 veces en la consola que se ejecuta el fetch de los post? es porque hay dos instancias de `useCounterStore`?
estaba teniendo problemas con redux toolkit en una app de next js y migre a zustand en muy poco tiempo , encanto y me soluciono el problema que tenia.
Hola que plugins utilizas para q tu consola muestre cuanta ram estas usando??
Gracias por el video , esta excelente react con ts y tecnologias como esta
cual es tema de vs code que usa?
Esta hermoso, batallo para entender redux pero zustand me ha parecido muy práctico y sencillo de utilizar
Es más simple que Redux, eso me gusta. Podrías hacer un video con recoiljs, me parace más interesante
es posible generar disparos o actions automaticos cuando cambie el estado ? como lo hace ngrx q se dispara el selector cada que cambio un estado ?
Está excelente zustand , gracias fazt <3
Si quisieras guardar los datos de post en un useState como seria !!?
Fazt, tienes pensando hacer algún tutorial sobre storybook?, Sería bueno poder ver en el canal un tutorial de como integrar y trabajar con storybook y react.
Súper interesante. Me gustó mucho más que redux y es más fácil de usar. Muchas gracias por compartir
Y que tal será en aplicaciones desplegadas para miles de usuarios? Y comparado con Valtio?
Poderoso el video Fazt