React.memo позволяет пропустить повторный render компонента при неизменных props. По умолчанию props сравниваются поверхностно через Object.is.
Для чего нужен `React.memo`?
React.memo позволяет пропустить повторный render компонента при неизменных props. По умолчанию props сравниваются поверхностно через Object.is.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
React.memo позволяет пропустить повторный render компонента при неизменных props. По умолчанию props сравниваются поверхностно через Object.is.
Обновление собственного state или используемого Context всё равно может вызвать render. Новые объекты и функции в props часто ломают ожидаемое переиспользование. Кастомный comparator должен учитывать всё, что влияет на вывод, иначе появятся устаревшие данные; мемоизацию используют как оптимизацию, а не гарантию корректности.