Как использовать состояние Redux в функции? - PullRequest
0 голосов
/ 16 февраля 2020

У меня есть функция, которую я храню в отдельном файле для ясности, и я пытаюсь выполнить действие Redux, а также получить из него состояние. Я называю эту функцию внутри моего приложения. js, которое подключено к провайдеру, но там написано, что props.jwt не определен. Я пытался подключить и экспортировать его как компонент, но не получилось.

import {connect} from 'react-redux';
import {getCurrentUserInformation} from '../actions/actions';
import instance from '../config/instance';

function getUserInformation(props) {
  instance
    .get('/api/user_information/', {
      headers: {Authorization: 'Token ' + props.jwt},
    })
    .then(response => {
      props.getCurrentUserInformation(
        response.data.id,
        response.data.username,
        response.data.profile_image,
        response.data.followers,
        response.data.following,
      );
    })
    .catch(error => {});
}

function mapStateToProps(state) {
  return {
    currentUser: state.userReducer.currentUser,
    jwt: state.userReducer.jwt,
  };
}

function mapDispatchToProps(dispatch) {
  return {
    getCurrentUserInformation: (
      id,
      username,
      profileImage,
      followers,
      following,
    ) =>
      dispatch(
        getCurrentUserInformation(
          id,
          username,
          profileImage,
          followers,
          following,
        ),
      ),
  };
}

1 Ответ

0 голосов
/ 16 февраля 2020

Попробуйте Redux Hooks. Вместо mapDispatchToProps и mapStateToProps вы можете использовать useSelector и useDispatch, чтобы получить доступ к вашему состоянию в функции. Вы можете найти больше в официальной документации здесь: https://react-redux.js.org/next/api/hooks

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