Когда useMemo приносит вред вместо пользы?

Middle
199 просмотров
AFK Offer AI

useMemo имеет overhead: хранение предыдущего значения + сравнение зависимостей. Для дешёвых вычислений (сложение, конкатенация) overhead больше выгоды. Правила: не мемоизируй примитивы (const x = useMemo(() => a + b, [a, b]) — бессмысленно). Мемоизируй: тяжёлые вычисления (фильтрация больших массивов), объекты передаваемые в memo-компоненты, значения в context value. React DevTools Profiler покажет — если компонент рендерится 1мс, memo не нужен. React Compiler уберёт необходимость.

Следующий вопрос

Зачем нужны data-атрибуты?