Global state coupling

Sąryšis per globalų state. Pernešimas state (būsenos) į state manager padaro koda chaotišką, sunkų ryšių analizavimui. State manageriai: Redux, zuslan ir t.t. Viskas eina per global state

Pvz TableCell komponente išvalomas state. Turetu butu formoje. Kitame komponente irgi galimas išvalymas ir sunku atsekti.

dispatch(setSelectedCell({ day, task}) dispatch(updateFormData({ name: '', task, hours: 0, date: ${selectedYear}-${String(s..... })); dispatch(setIsModalOpen (true)); };

Minusai

  • vizualiai paprastesnis komponentas. Globalus state yra gerai, bet jis sukūria naujas problemas
  • labai sunku suprasti kaip visa programa veikia
  • neįmanoma perpanaudoti kodą
  • kodas tampa sudetingas

Sprendimai

  • sukurti local global state. Ne visur reikia globalaus state
  • naudoti paterną mediator