Встречается на собеседованиях • сегодня
Какие знаешь проблемы работы с классовыми компонентами
1. **Громоздкость кода** – классы требуют больше boilerplate (конструктор, `this`, `bind` методов).
2. **Проблемы с `this`** – необходимость явного байндинга методов или использование стрелочных функций.
3. **Сложность переиспользования логики** – до хуков сложно было разделять логику между компонентами (HOC, render props).
4. **Оптимизация** – `shouldComponentUpdate` требует ручной настройки, что усложняет код.
Пример проблемы с `this`:
```jsx
class Button extends React.Component {
handleClick() {
console.log(this); // undefined без bind
}
render() {
return ;
}
}
```
Решение:
```jsx
onClick={this.handleClick.bind(this)}
// или стрелочная функция в конструкторе
this.handleClick = () => {...}
```
Функциональные компоненты с хуками решают эти проблемы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы