Встречается на собеседованиях • сегодня
Достаточно ли useCallback для оптимизации дочернего компонента
`useCallback` помогает избежать лишних ререндеров дочерних компонентов, **но только в сочетании с `React.memo`**. Сам по себе `useCallback` не предотвращает ререндеры, если пропсы (включая колбэки) остаются теми же, но создаются заново.
```jsx
const Child = React.memo(({ onClick }) => {
console.log('Child render');
return ;
});
const Parent = () => {
const [count, setCount] = useState(0);
const handleClick = useCallback(() => console.log('Clicked!'), []);
return (
<>
</>
);
};
```
**Когда `useCallback` не поможет:**
- Если дочерний компонент не обёрнут в `React.memo`
- Если помимо колбэка меняются другие пропсы
- Если колбэк зависит от часто меняющихся зависимостей (например, `[state]`)
Оптимизация работает только при **неизменяемых пропсах** и **мемоизированном компоненте**.

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