Como Context ya no es una característica experimental y puede usar Context en su aplicación directamente y será excelente para transmitir datos a componentes profundamente anidados para los que fue diseñada.
Como Mark erikson ha escrito en su blog :
Si solo usa Redux para evitar pasar accesorios, el contexto podría reemplazar a Redux, pero probablemente no lo necesitaba en primer lugar.
El contexto tampoco le brinda nada como la Redux DevTools
capacidad de rastrear sus actualizaciones de estado, middleware
agregar lógica de aplicación centralizada y otras capacidades poderosas que lo Redux
habilitan.
Redux
es mucho más potente y proporciona una gran cantidad de funciones que Context Api
no proporciona, también como As @danAbramov mencionó
React Redux usa el contexto internamente pero no expone este hecho en la API pública. Por lo tanto, debe sentirse mucho más seguro usando el contexto a través de React Redux que directamente porque si cambia, la carga de actualizar el código estará en React Redux y no en usted.
Depende de Redux actualizar su implementación para cumplir con la última API de contexto
La última API de contexto se puede usar para aplicaciones en las que simplemente usaría Redux para pasar datos entre componentes, sin embargo, las aplicaciones que usan datos centralizados y manejan solicitudes de API en creadores de acciones que usan redux-thunk
o redux-saga
aún necesitarían redux. Aparte de esto, redux tiene otras bibliotecas asociadas comoredux-persist
que le permiten guardar los datos de la tienda en localStorage y rehidratarse en la actualización, que es el contexto que la API todavía no admite.
Como @dan_abramov mencionó en su blog Es posible que no necesite Redux , que redux tiene una aplicación útil como
- Persista el estado en un almacenamiento local y luego inicie desde él, fuera de la caja.
- Llene previamente el estado en el servidor, envíelo al cliente en HTML y arranque desde él, listo para usar.
- Serialice las acciones del usuario y adjúntelas, junto con una instantánea del estado, a informes de errores automatizados, para que los desarrolladores de productos
puedan reproducirlas para reproducir los errores.
- Pase objetos de acción a través de la red para implementar entornos de colaboración sin cambios dramáticos en la forma en que se escribe el código.
- Mantenga un historial de deshacer o implemente mutaciones optimistas sin cambios dramáticos en la forma en que se escribe el código.
- Viaje entre el historial de estado en desarrollo y vuelva a evaluar el estado actual del historial de acción cuando cambie el código, a la TDD.
- Proporcione capacidades completas de inspección y control a las herramientas de desarrollo para que los desarrolladores de productos puedan crear herramientas personalizadas para sus
aplicaciones.
- Proporcione IU alternativas mientras reutiliza la mayor parte de la lógica empresarial.
Con todas estas aplicaciones, es demasiado pronto para decir que Redux será reemplazado por la nueva API de contexto.
duix
paquete npm. Es solo un simple administrador de estado con devoluciones de llamada, realmente fácil de implementar. Para ser claros: soy el creador.