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

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