PassFront
  1. PassFront
  2. База знаний
  3. Продвинутые темы

Из чего состоит Redux?

Продвинутые темы

Redux состоит из нескольких частей: store, actions, reducers, dispatch (и опционально middleware). Вместе они обеспечивают предсказуемый однонаправленный поток данных.

Составные части

Store

Единый объект-хранилище всего состояния. Даёт getState(), dispatch(), subscribe().

const store = configureStore({ reducer: rootReducer });

Action

Обычный объект, описывающий «что произошло». Обязательно поле type:

{ type: 'cart/itemAdded', payload: { id: 1 } }

Reducer

Чистая функция (state, action) => newState. Не мутирует состояние, возвращает новое.

function cartReducer(state = [], action) {
  switch (action.type) {
    case 'cart/itemAdded':
      return [...state, action.payload];
    default:
      return state;
  }
}

Dispatch

Отправляет action в store, что запускает reducer и обновляет состояние.

Middleware (опционально)

Промежуточный слой между dispatch и reducer: логирование, асинхронность (redux-thunk, redux-saga).

Поток

dispatch(action) → middleware → reducer → новый state → подписчики (UI).

Коротко для собеседования

Части Redux: store (единое хранилище), actions (объекты с type), reducers (чистые функции обновления), dispatch (отправка action) и middleware (асинхронность, логи). Данные текут однонаправленно: action → reducer → state → UI.

Другие вопросы раздела