добавить дополнительную функциональность в функции приведения? - PullRequest
0 голосов
/ 10 марта 2019

Я учусь использовать редукс. Я уже поняла концепцию действия, и она приходит ко мне.

Я использую 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,
  };
}

и мой редуктор только меняет статус магазина.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...