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

Зачем нужен Thunk

Thunk — это middleware для Redux, позволяющий обрабатывать асинхронные действия. Он откладывает выполнение функции до момента, когда данные будут готовы.

Основные причины использования:

  1. Асинхронные запросы — например, загрузка данных с API.
  2. Доступ к dispatch и getState — можно проверять состояние или запускать новые экшены после асинхронной операции.

Пример:

javascript
const fetchUser = (userId) => async (dispatch) => {
  dispatch({ type: 'USER_FETCH_START' });
  try {
    const response = await fetch(`/api/users/${userId}`);
    const user = await response.json();
    dispatch({ type: 'USER_FETCH_SUCCESS', payload: user });
  } catch (error) {
    dispatch({ type: 'USER_FETCH_ERROR', payload: error });
  }
};

Без Thunk пришлось бы обрабатывать асинхронность в компонентах, усложняя логику.

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

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

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

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