Встречается на собеседованиях • сегодня
Как реализовать проверку пропсов на изменения для оптимизации перерендера компонента
Для проверки пропсов на изменения можно использовать `React.memo` или `shouldComponentUpdate` (для классовых компонентов). `React.memo` оборачивает функциональный компонент и предотвращает перерендер, если пропсы не изменились.
Пример с `React.memo`:
```jsx
const MyComponent = React.memo(({ prop1, prop2 }) => {
return
{prop1} {prop2}
;
}, (prevProps, nextProps) => {
// Кастомная проверка пропсов
return prevProps.prop1 === nextProps.prop1 &&
prevProps.prop2 === nextProps.prop2;
});
```
Для глубокого сравнения объектов можно использовать библиотеки типа `lodash.isEqual`, но это может быть затратно по производительности. Лучше передавать примитивы или мемоизированные объекты через `useMemo`.
Для классовых компонентов:
```jsx
class MyComponent extends React.Component {
shouldComponentUpdate(nextProps) {
return this.props.prop1 !== nextProps.prop1;
}
}
```
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы