Witam, popularniejszy jest Conext API czy Redux? Z tego co wiem, oba odpawiadają za podobną rzecz, pozwalają łatwiej zarządzać stanem (state) i przekazywać go do innych komponentów. Nie wiem za co sie zabrać. Tzn czy Redux odpadnie, skoro Context API jest od teamu od Reacta czy Redux i tak potrafi inne/więcej rzeczy?
Redux czy Context API?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 38
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Kraków
- Postów: 1114
Nie chcę Cię martwić ale autorzy reduxa (Dan i Andrew) obecnie wchodzą w skład react core team który jest odpowiedzialny za rozwój Reacta :).
Redux pod spodem wykorzystuje context api, więc tak oferuje więcej niż context api, ale nie oferuje tego za darmo, najlepiej przeczytać co autor reduxa o tym trade-offie napisał:
You Might Not Need Redux
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Gdańsk
- Postów: 647
Ktoś tu kiedyś pisał, że hype na Reduxa opada. No cóż, chyba nie :P https://www.reddit.com/r/reactjs/comments/favlhe/why_is_redux_necessary/
- Rejestracja: dni
- Ostatnio: dni
- Postów: 502
kakaisback napisał(a):
Witam, popularniejszy jest Conext API czy Redux?
Context, React-redux używa Contextu.
Z tego co wiem, oba odpawiadają za podobną rzecz, pozwalają łatwiej zarządzać stanem (state) i przekazywać go do innych komponentów.
Jak to jedyne co wiesz to nie potrzebujesz reduxa. Siła Reduxa tkwi w mozliwosci uzycia middleware'ow
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Kraków
- Postów: 1114
Po ostatnich zabawach doszedłem do wniosku że Context API przydaje się tylko wtedy, kiedy tylko chcemy udostępniać danie na odległość, jak chcemy jeszcze je modyfikować (z odległych komponentów) to i tak będziemy musieli zaimplementować coś w stylu Reduxa, więc równie dobrze można od razu zacząć od Reduxa.
Także obecnie moje stanowisko jest takie, że Context API można kompletnie zignorować jeśli chodzi o pisanie kodu aplikacji i od razu iść w Reduxa, o ile rzeczywiście potrzebujemy komunikację/dzielenie stanu pomiędzy odległymi od siebie komponentami, lub mamy jeden z innych problemów który rozwiązuje Redux. Context API natomiast moze się przydać do pisania poszczególnych kontrolek takich jak router czy obsługa formularzy.