Для чего нужен UseMemo
Python
Middle
Без компании
Для чего нужен UseMemo
Ответы
`useMemo` — это хук в React, который позволяет оптимизировать производительность, мемоизируя (кешируя) результат вычислений. Он полезен, когда есть дорогостоящие вычисления, которые не нужно пересчитывать при каждом рендере, если их зависимости не изменились.
**Пример:**
```
import React, { useMemo } from 'react';
const ExpensiveComponent = ({ items, filter }) => {
const filteredItems = useMemo(() => {
return items.filter(item => item.includes(filter));
}, [items, filter]); // Пересчитывает только при изменении items или filter
return <div>{filteredItems.join(', ')}</div>;
};
```
**Когда использовать:**
- Для тяжелых вычислений (фильтрация, сортировка, сложные формулы).
- Когда ререндер дочерних компонентов зависит от неизменных данных.
**Когда НЕ использовать:**
- Для простых операций (мемоизация может быть дороже пересчета).
- Если зависимости меняются слишком часто.
`useMemo` не гарантирует предотвращение ререндера, для этого также может потребоваться `React.memo`.