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

Какие антипаттерны не будешь использовать при создании компонента с асинхронной логикой

1. **Пропуск обработки ошибок** - всегда добавляй `try/catch` или `.catch()` для асинхронных операций. 2. **Неуправляемые состояния загрузки** - избегай "плавающих" состояний, используй четкие флаги `isLoading`, `isError`. 3. **Race conditions** - при быстрых последовательных запросах отменяй предыдущие (например, через `AbortController`). 4. **Избыточные ререндеры** - мемоизируй колбэки и данные, особенно в эффектах. 5. **Размазывание логики** - не смешивай запросы и UI-логику, выноси в хуки/сервисы. Пример плохого подхода: ```jsx function UserProfile() { const [data, setData] = useState(null); useEffect(() => { fetch('/user').then(res => setData(res)); // Нет обработки ошибок/загрузки }, []); return
{data.name}
; // Упадёт при data === null } ```
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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