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