Как работает рендеринг в react?

Допустим, есть компоненты Root, в нем A B. Внутри B есть компоненты B1 и B2

В Root объявлен стейт. Данные из этого стейта пробрасываются в B и затем B2.

Если значение в стейте меняется, как сработает рендеринг?

  1. Будет перерендерен компонент Root, включая все дочерние компоненты.
  2. Будут перерендерен компонент B2
  3. Другое

схема компонентов


Ответы (1 шт):

Автор решения: Sergei Kirjanov

Будет перерендерен компонент Root, включая все дочерние компоненты.

Но есть memo, которым можно оборачивать дочерние компоненты. Тогда, если их пропы (через которые передается стейт) не поменялись, то рендер глубже не идет.

Еще есть useContext, чтоб перепрыгивать уровни.

→ Ссылка