mapStateToProps не отправляет ничего реквизитам - PullRequest
0 голосов
/ 31 октября 2019

У меня есть компонент «FloatingChat», который необходимо подключить к Redux, поэтому я создал контейнер «FloatingChatContainer» для этого компонента,

src / Containers / FloatingChatContainer.js

import { connect } from "react-redux";

import FloatingChat from "../../components/FloatingChat";

const mapStateToProps = (state, props) => ({
  auth: state[props.auth],
  errors: state[props.errors]
});

const FloatingChatContainer = connect(mapStateToProps)(FloatingChat);

export default FloatingChatContainer;

Но в компоненте FloatingChat у меня ошибка:

TypeError: Cannot read property 'isAuthenticated' of undefined

  useEffect(() => {
    console.log("props ", props);
    if (props.auth.isAuthenticated) {
      loadUser();
    }
  }, []);

И журнал консоли возвращает пустой объект, поэтому мои реквизиты не поступают в компонент,

Кто-топомощь?

1 Ответ

0 голосов
/ 31 октября 2019

Трудно ответить, что происходит с вашим штатом, не видя больше вашего проекта. Я бы посмотрел на несколько разных потенциальных преступников:

  1. Убедитесь, что ваш компонент принимает реквизит через constructor(props) + super(props).

  2. Добавьте промежуточное программное обеспечение для ведения журнала в свое приложение, чтобы вы могли лучше отслеживать ошибки состояния / отладки. Вы можете посмотреть логгер здесь .

  3. Добавить метод componentDidMount() к вашему компоненту реакции.

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