Sobes.tech
Назад к вопросам
Middle+
6

Что вызывает ре-рендер компонентов в React?

Компании, где спрашивали
Твое Лайв

Ответ от нейросети

sobes.tech AI

В React ре-рендер компонента происходит, когда изменяются его props или state. Также ре-рендер может быть вызван изменением контекста (Context API) или родительским ре-рендером.

Основные причины ре-рендера:

  • Изменение state через setState или хуки (useState, useReducer).
  • Получение новых props от родительского компонента.
  • Изменение значения в Context, если компонент его использует.
  • Принудительный вызов метода forceUpdate.

Пример:

function MyComponent({ value }) {
  const [count, setCount] = React.useState(0);

  // Ре-рендер произойдет при изменении count или value
  return <div onClick={() => setCount(count + 1)}>{value} - {count}</div>;
}

Оптимизации включают React.memo, useMemo, useCallback, чтобы избежать ненужных ре-рендеров.