Действие Redux возвращает неопределенное значение? - PullRequest
0 голосов
/ 17 декабря 2018

Redux store становится неопределенным в action.data, хотя моя функция редуктора получает правильный результат из API, моя отправка находится в правильном месте.

Моя функция редуктора:

const convertPosition = StateHelper.createAsyncOperation(MODULE, 'convertPosition');

export function $convertPosition(lat, long) {
  return (dispatch) => {
    dispatch(Activity.$processing(MODULE, $convertPosition.name));
    dispatch(convertPosition.request());

    return fetch(`${API_ENDPOINT}/shared/maps/address?latlong=${lat},${long}`, {
      headers: {
        Authorization: `Bearer ${AuthService.getAccessToken()}`,
      },
    })
      .then(FetchHelper.ResponseHandler, FetchHelper.ErrorHandler)
      .then((result) => dispatch(convertPosition.success(result)))
      .catch((error) => dispatch(convertPosition.failure(error)))
      .finally(() => dispatch(Activity.$done(MODULE, $convertPosition.name)));
  };
} 

Мое утверждение редуктора:

    case convertPosition.SUCCESS:
      return {
        ...state,
        locationName: action.data,
      };
    case convertPosition.FAILURE:
      return {
        ...state,
        locationName: null,
      };

1 Ответ

0 голосов
/ 17 декабря 2018

После того, как я проверил API с почтальоном, результатом был массив, поэтому код был:

  ...
  .then((result) => dispatch(convertPosition.success({result: result})))
  ....
...