Variace hooku useEffect v Reactu

Hook useEffect má další varianty, které jsou specifické a velmi zřídka používané, proto se na nich stručně zastavíme.

První varianta - to je hook useLayoutEffect, který se spustí ještě předtím, než prohlížeč znovu vykreslí obrazovku. Tuto možnost můžete využít k výpočtu velikostí a pozice komponenty v závislosti na jiných prvcích, aby je pak prohlížeč při vykreslování zobrazil ihned tak, jak a kde je potřeba. Díky tomu například uživatel neuvidí mezikroky přeskočení komponenty při změně polohy nebo velikostí, ale pouze jejich finální verze.

Druhá varianta - to je hook useInsertionEffect, který se spustí před jakýmikoli změnami DOM stromu, tedy v okamžiku, kdy ještě nejsou refy připojeny a DOM není aktualizován. Používá se hlavně tam, kde je potřeba vložit dynamické styly z CSS-in-JS knihoven před změnou DOM.