Как добиться того, чтобы компонент с 5 пропсами игнорировал изменения трёх из них и перерендеривался только при изменении двух?

Чтобы компонент с 5 пропсами перерендеривался только при изменении двух из них, можно использовать кастомное сравнение пропсов. Например, в React это делается с помощью React.memo и функции сравнения:

Короткий ответ

Что ответить на собеседовании

Чтобы компонент с 5 пропсами перерендеривался только при изменении двух из них, можно использовать кастомное сравнение пропсов. Например, в React это делается с помощью React.memo и функции сравнения:

Подробный разбор

Ответ с пояснениями

Чтобы компонент с 5 пропсами перерендеривался только при изменении двух из них, можно использовать кастомное сравнение пропсов. Например, в React это делается с помощью React.memo и функции сравнения:

const MyComponent = React.memo(function MyComponent(props) {
  // компонент использует props.a и props.b
}, (prevProps, nextProps) => {
  // игнорируем изменения props.c, props.d, props.e
  return prevProps.a === nextProps.a && prevProps.b === nextProps.b;
});

Таким образом, компонент будет перерендериваться только если изменятся a или b. Это повышает производительность, избегая лишних рендеров при изменении несущественных пропсов.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку