Представьте таблицу с 1000 строк, где каждое изменение фильтра заставляет весь список дергаться. Или форму с динамическими полями, которая начинает лагать после пятого вложенного компонента. Эти сценарии – не баги, а закономерный результат неоптимального управления рендерингом. Современные React-приложения часто страдают не от сложности логики, а от каскадных повторных отрисовок компонентов.
Корень проблемы: как рождается лишний рендеринг
React повторяет отрисовку компонента в трех случаях:
- Изменились пропсы
- Изменился внутренний state
- Обновился родительский компонент
Последний пункт – главный источник проблем. В классической архитектуре обновление корневого компонента приводит к чередe дочерних обновлений:
...