Встречается на собеседованиях • сегодня

Почему хук нельзя обернуть в if

Хуки React должны вызываться в одинаковом порядке при каждом рендере компонента. React полагается на этот порядок для корректного сопоставления состояния между рендерами.

Если обернуть хук в условие, это может нарушить порядок вызовов хуков:

jsx
// ❌ Неправильно
if (condition) {
  const [state, setState] = useState(); // Может вызываться не на каждом рендере
}

// ✅ Правильно
const [state, setState] = useState();
if (condition) {
  // Используем state здесь
}

Это правило ("хуки должны вызываться на верхнем уровне") гарантирует, что React сможет правильно сохранять и обновлять состояние компонента между рендерами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы