Встречается на собеседованиях • сегодня
Когда нужно было прокидывать функцию в массив зависимостей
Функцию нужно прокидывать в массив зависимостей `useEffect`, `useCallback` или `useMemo`, если она определена внутри компонента и зависит от его пропсов или состояния. Это гарантирует, что хук будет использовать актуальную версию функции при каждом рендере.
```jsx
const MyComponent = ({ id }) => {
const [data, setData] = useState(null);
const fetchData = useCallback(async () => {
const response = await fetch(`/api/data/${id}`);
setData(await response.json());
}, [id]); // id в зависимостях
useEffect(() => {
fetchData();
}, [fetchData]); // fetchData в зависимостях
return
{data && data.name}
;
};
```
Если функция стабильна (не зависит от пропсов/состояния), можно вынести её за компонент или обернуть в `useCallback` без зависимостей, чтобы избежать лишних ререндеров.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы