Встречается на собеседованиях • сегодня
Как получить dispatch внутри асинхронной функции без redux-funk
Для получения `dispatch` внутри асинхронной функции без redux-thunk можно использовать замыкание или передачу dispatch как аргумента:
```javascript
// Вариант 1: Замыкание
const asyncAction = () => async (dispatch) => {
const data = await fetchData();
dispatch({ type: 'DATA_LOADED', payload: data });
};
// Вариант 2: Передача dispatch как аргумента
const asyncAction = async (dispatch) => {
const data = await fetchData();
dispatch({ type: 'DATA_LOADED', payload: data });
};
// Использование
store.dispatch(asyncAction);
```
Или с помощью хуков в React компоненте:
```javascript
const Component = () => {
const dispatch = useDispatch();
const handleClick = async () => {
const data = await fetchData();
dispatch({ type: 'DATA_LOADED', payload: data });
};
return ;
};
```
В обоих случаях dispatch доступен внутри асинхронной функции.

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