Wpis z mikrobloga

#react #reactnative mirki jak najlepej rozwiązać ten problem w apce mobilnej, mal ekran z listą postów, klikam w post przechodzę do widoku posta robie fetch na tym ekranie Po czym daje like. Wracam do listy i mam nieaktualny element na liście (stara liczba postów). Dotychczas wszystko sobie trzymałem w reduxie ale gdy robie taki moduł społecznościowy to tych zasobów i różnych list jest od zawalenia poza tym ciagle się aktualizują. Mam jedno rozwiązanie związane z reduxem i obiektem do aktualizacji który nasłuchiwałbym na wszystkich osobnych ekranach i gdy coś się pojawi zaaktualizwane to daje update elementu na tej liście
  • 4
@IlllI: jak sam zidentyfikowałeś musisz mieć jeden source of truth. Czy redux, czy mobx, czy context, czy Apollo, potrzebujesz dopisać abstrakcje, która będzie łatwa i optymalna

różnych list jest od zawalenia poza tym ciagle się aktualizują

Może wrzuć jak wygląda struktura, będzie łatwiej pomóc
Wiesz każdy ekran ma jakas liste wpisów np widok profilu widok najnowszych wpisów plus ekrany ten mogą się pojawiać kilkukrotnie pushem bo z jednego profilu przechodzę np na inny profil. Dlatego na kazdym takim widoku pobieram wpisy i trzymam jako state tego ekranu.
@IlllI: generalnie zależy ile masz tych danych itd. bo jak jest ich niewiele to możesz sobie to trzymać w storze w obiektach np.

[{
id: 1,
items: [{id: 1, isSelected: false}, {id: 2, isSelected: true}],
timestamp: X,
},
{
id: 2,
items: [{id: 1, isSelected: false}, {id: 2, isSelected: true}],
timestamp: X,
}]

itd. Wtedy sobie na tej podstawie przy fetchu danej "karty" sprawdzasz czy masz już dane (+ ewentualnie logika
@Rst00: właśnie wiem, że to można na wiele sposobów zrobić, mam ten problem, że sam od lat pracuje nad projektem i nie mam kogo zapytać. Pojawią się takie rozwiązania w głowie ale często myślę 'to jest w sumie zbyt #!$%@? pewnie da się inaczej a ja idę na około' ;D