В каких случаях используется UseCallback
Python
Middle
Без компании
В каких случаях используется UseCallback
Ответы
`useCallback` — это хук в React, который мемоизирует функцию, предотвращая её пересоздание при каждом рендере. Это полезно для оптимизации производительности, особенно когда функция передаётся в дочерние компоненты, зависящие от сравнения пропсов (например, `React.memo` или `useEffect`).
**Основные случаи использования:**
- Передача колбэков в оптимизированные дочерние компоненты.
- Зависимости эффектов (`useEffect`), где функция является зависимостью.
**Пример:**
```
import React, { useState, useCallback } from 'react';
const Child = React.memo(({ onClick }) => {
console.log('Child render');
return <button onClick={onClick}>Click me</button>;
});
function Parent() {
const [count, setCount] = useState(0);
const handleClick = useCallback(() => {
setCount(prev => prev + 1);
}, []); // Зависимости пусты — функция создаётся один раз
return (
<>
<Child onClick={handleClick} />
<div>Count: {count}</div>
</>
);
}
```
Без `useCallback` компонент `Child` перерендеривался бы при каждом обновлении `Parent`, так как `handleClick` создавалась бы заново.