React Nav Bar不以新状态渲染

时间:2018-06-29 16:17:07

标签: javascript reactjs firebase next.js

我正在根据用户是否登录来在react中创建一个导航栏,以显示不同的链接。(我们将firebase用于帐户内容。)

这就是我所拥有的:

async function isLoggedIn() {
return await UsersManagement.isLoggedIn();
}

export default class Navigation extends React.Component {
  constructor(props) {
    super(props);
    this.state = ({ loggedIn: isLoggedIn() });
  }

  componentDidMount() {
    this.setState({ loggedIn: isLoggedIn()})
  }

  render() {
    return (
        {this.state.loggedIn ? (
          <LoggedInLinks />
        ) : (
            <NotLoggedInLinks />
          )}
       } 
 }

我尝试直接使用函数UserManagement.isLoggedIn()从此组件中删除状态。该功能有效。我可以通过打印语句看到它在未登录时返回正确的用户ID或null

那我想念什么?是否有更好的方法来创建导航栏,以根据登录状态做出更改?

谢谢!

0 个答案:

没有答案