W projektach pracy zdarzało mi się pracować z reduxem i mobx. Obecnie wszyscy szaleją za react context, a ja powiem szczerze, że w prywatnych projektach zupełnie tego nie używam.
Jak robię jakąś apkę na boku, to zawsze korzystam z react navigation, a ewentualny globalny stan aplikacji trzymam w navigation.params. W ten sposób mam praktycznie najmniej boilerplatu, bo nie muszę tworzyć kontekstu, a tym bardziej całej struktury reduxa. przechowuje w params dwa obiekty - temp, i persistent, w których trzymam wszystkie potrzebne globalne informacje i nigdy nie trafiłem na żaden problem z tym związany. Temp nadpisuje przy każdej zmianie ekranu, persistant przenoszę. Po co komplikować?
Czy są jakieś obiektywne przewagi korzystania z reduxa, mobxa, czy kontekstu nad navigation.params?
Zdaje sobię sprawę, że potencjalnie jakieś przewagi optymalizacyjne można odnaleźć, ale to kwestia przemyślenia struktury danych.
Najbardziej mnie rozbraja jak widzę w projektach połączenie prop drilling, reduxa, contextu i navigation.params i to jest niby takie pro, bo wszystkie nowinki zostały wykorzystane - 4 sources of thruth.