Я создаю навигационную панель в реакции, которая показывает разные ссылки в зависимости от того, вошел ли пользователь в систему. (Мы используем 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
, когда не вошел в систему.
Так чего мне не хватает? Есть ли лучший способ создать навигационную панель в реакции, которая изменяется в зависимости от статуса входа в систему?
Спасибо!