Встречается на собеседованиях • сегодня
Как реализовать асинхронный код в Redux
Для асинхронных операций в Redux используют middleware. Самый популярный вариант - redux-thunk. Он позволяет dispatch'ить не только объекты, но и функции.
Пример с thunk:
javascript
// action creator
const fetchData = () => {
return async (dispatch) => {
dispatch({ type: 'FETCH_START' });
try {
const response = await fetch('/api/data');
const data = await response.json();
dispatch({ type: 'FETCH_SUCCESS', payload: data });
} catch (error) {
dispatch({ type: 'FETCH_ERROR', error });
}
};
};
// использование
store.dispatch(fetchData());
text
Альтернативы:
- `redux-saga` для сложных сценариев
- `redux-observable` для RxJS подходов
- RTK Query (часть Redux Toolkit) для API запросов
Для настройки thunk:
```javascript
import { configureStore } from '@reduxjs/toolkit';
const store = configureStore({
reducer: rootReducer,
middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat(thunk),
});
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы