Я учусь использовать редукс. Я уже поняла концепцию действия, и она приходит ко мне.
Я использую redux-saga и делаю запрос к моему API. Я хочу сделать так, чтобы независимо от того, что мой запрос (токен jwt) возвращается, он сохраняется в localStorage.
export function* login() {
// Select username from store
const login = yield select(makeIdSelector());
const password = yield select(makePasswordSelector());
const requestURL = `/api/users/login`;
try {
// Call our request helper (see 'utils/request')
const response = yield call(request, requestURL, {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
login,
password,
}),
});
response.success
? (yield put(successPasswordAction()), yield put(successLoginAction()))
: yield put(
errorPasswordAction(<FormattedMessage {...messages.passwordError} />),
);
} catch (err) {
yield put(errorIdAction(<FormattedMessage {...messages.serverError} />));
}
}
а где мне это написать? Мой разум подсказывает мне, что в successLoginAction()
, но есть только:
export function successLoginAction() {
return {
type: LOGIN_SUCCESSFUL,
};
}
и мой редуктор только меняет статус магазина.