Встречается на собеседованиях • сегодня
Сталкивался ли с race condition в React
Да, race condition может возникать в React, особенно при работе с асинхронными операциями (запросами, таймерами). Классический пример — когда пользователь быстро меняет параметры запроса, а ответы приходят в неправильном порядке.
jsx
function UserProfile({ userId }) {
const [user, setUser] = useState(null);
useEffect(() => {
fetch(/api/users/${userId})
.then(res => res.json())
.then(data => setUser(data));
}, [userId]);
// Если быстро менять userId, может установиться устаревший ответ
}
text
**Решение:**
1. Отмена запросов с помощью `AbortController`
2. Использование флагов или проверок:
```jsx
useEffect(() => {
let isActive = true;
fetch(`/api/users/${userId}`)
.then(res => res.json())
.then(data => isActive && setUser(data));
return () => { isActive = false; };
}, [userId]);Для сложных случаев можно использовать библиотеки типа React Query, которые автоматически обрабатывают race condition.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы