В React render вычисляет описание интерфейса, commit применяет изменения DOM, а браузер отдельно выполняет layout и paint. Согласование называется reconciliation.
Чем отличается рендер от отрисовки? Как называется процесс сравнения виртуального и реального DOM-дерева?
В React render вычисляет описание интерфейса, commit применяет изменения DOM, а браузер отдельно выполняет layout и paint. Согласование называется reconciliation.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В React render вычисляет описание интерфейса, commit применяет изменения DOM, а браузер отдельно выполняет layout и paint. Согласование называется reconciliation.
React сопоставляет новое дерево элементов с предыдущим представлением, используя типы и keys; это не полный обход и сравнение виртуального дерева с реальным DOM при каждом рендере. Render может произойти без видимых DOM-изменений. Поэтому слова «компонент перерендерился» и «браузер заново нарисовал всё» не равнозначны.