Wpis z mikrobloga

@lobo: znam ten artykuł i generalnie się z nim zgadzam ponieważ wszystko co w nim jest to prawda za którą stoją sensowne argumenty (a ciężko się z czymś takim nie zgadzać), ale i tak lekko wkurza mnie fakt że istnieje swobodne przyzwolenie na to żeby narzędzie przez nas używane powodowało potencjalne problemy z wydajnością którym nie można zapobiec z wyprzedzeniem i które należy naprawić dopiero gdy wystąpi i jakoś zostanie wyłapane.
@wybacz: Dodatkowo:
Zależnie od implementacji, callbacki do customowych hooków mogą funkcję przekazywać do depów w useCallback/useMemo/useEffect, wtedy dobrze owinąć callback w useCallback, zwłaszcza jeśli hook wywołuje wiele rerenderów, np. useWindowScroll(useCallback(() => { /* Close popup */ }, []));
Ponadto ref callbacki powinny używać useCallback
Poniższe co rerender będzie wywoływało callback z element jako null, i potem z faktycznym elementem, bo identity funkcji się zmienia

{ /* Something */ }}>.