我正在开发反应项目,
我的导航栏有一个登录按钮

在Navigation.js中,
我检查用户是否登录

const authenticated = user != null;


并决定显示登录或注销

{authenticated ? (
        <LogoutButton logout={logout} />
      ) : (
          <Link to="/login">
            <button>Login</button>
          </Link>

        )}


但是问题在于登录后,导航栏未更新为注销。
我怎么解决这个问题?

最佳答案

在您的导航课程中

constructor(props) {
    super(props);
    this.state = {
        authenticated : null
    };
};

componentDidMount() {
    // Call this function here or anywhere like user login event
    this.setState({authenticated : user != null});
}

09-20 22:56