mapStateToProps неправильно обращается к вложенному объекту? - PullRequest
0 голосов
/ 04 февраля 2019

РЕДАКТИРОВАТЬ: Я исправил изображения, чтобы сделать их более удобными для просмотра

Я не понимаю, что происходит с mapStateToProps() здесь.console.log() распечатывает то, что вы видите на изображении, поэтому оно обращается к state и state.image.urls после асинхронного вызова.Кроме того, в методе рендеринга он прекрасно читает this.props.image с сообщением об ошибке, которое вы видите, отмечая, что он видит там ключ 'raw', но по какой-то причине, когда я делаю state.image.urls.raw или this.props.image.raw, он говорит, что может'raw' of undefined, даже если это отображается в консоли.Я тоже пробовал ['raw'], но ни одна не работала.Это не работает для закомментированных значений состояния.Почему это происходит?

class App extends React.Component {
  componentDidMount() {
    this.props.getBackgroundImage();
  }

  render() {
    return (
      <div className="app">
        {console.log(this.props.image)}                   (LINE 15)
        <Container
          photoProfile={this.props.photographerProfile}
          photoName={this.props.photographerName}
        />
      </div>
    );
  }
}

const mapStateToProps = state => {
  console.log(state);                                      (LINE 26)
  console.log(state.image.urls);                           (LINE 27)
  return {
    image: state.image.urls
    // photographerProfile: state.image.user.links.html,
    // photographerName: state.image.user.name
  };
};

export default connect(
  mapStateToProps,
  { getBackgroundImage }
)(App);

console image 1 console image 2

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