正确的方法来获取不同的用户数据以显示在个人资料页面上?

时间:2019-05-01 00:08:16

标签: reactjs react-router

听起来正确吗?

我有一个名为get_user_data( username )的函数,该函数通过该用户名查找用户并将数据设置到顶级状态内的profile_data中。

// example of what the state will look like after get_user_data fires
state = {
  profile_data: {
    username: 'admin'
    likes: 10,
    followers: 9
  }
}

我将函数get_user_dataprofile_data传递到ProfilePage.js组件中。

<ProfilePage 
  get_user_data={ this.get_user_data.bind( this ) }
  user_data={ this.state.profile_data }
/>

ProfilePage.js内,在不赞成使用的生命周期方法componentWillMount中,我调用该函数以获取配置文件数据this.props.get_user_data( username ),该配置文件数据应将user_data设置为同样然后传递回组件。这样我就可以使用this.props.user_data.[something]

我目前遇到的问题是,由于rendercomponentWillMount之后触发,因此某些值在第一个渲染中断我的代码时为null。我可以通过执行一堆IF语句来解决该问题,以查看该值是否为null / undefined,但我认为这不是正确的方法。

这是实现这样目标的正确方法吗?其他人如何建立个人资料页面?

0 个答案:

没有答案