Встречается на собеседованиях • сегодня
Как оптимизированы ререндеры в классовых компонентах в React
React оптимизирует ререндеры в классовых компонентах через `shouldComponentUpdate` и `PureComponent`.
1. **shouldComponentUpdate**
Позволяет вручную контролировать ререндер, сравнивая текущие и новые пропсы/стейт. Возвращает `false`, если обновление не нужно.
```jsx
shouldComponentUpdate(nextProps, nextState) {
return this.props.value !== nextProps.value;
}
```
2. **PureComponent**
Автоматически делает поверхностное сравнение пропсов и стейта. Если они не изменились — ререндер не происходит.
```jsx
class MyComponent extends React.PureComponent {
render() {
return
{this.props.value}
;
}
}
```
**Важно:**
- PureComponent сравнивает только верхний уровень объектов
- Для сложных структур данных лучше использовать shouldComponentUpdate
- Избегайте мутаций стейта/пропсов (например, через push)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы