Я перепробовал все ответы, которые смог найти, это мой маршрут:
const loggedIn = !!localStorage.getItem('token');
const Routes = () => (
<div>
<Switch>
<Route exact path="/" render={() => (
!loggedIn ? (
<Redirect to="/login" />
) : (
<Redirect to="/welcome" />
)
)}/>
</Switch>
</div>
);
export default Routes;
Однако он все еще не работает .. Я получаю сообщение об ошибке в другом контейнере:
menuContainer.js: 10 Uncaught TypeError: Невозможно прочитать свойство 'id' с нулевым значением
constructor(props) {
super(props);
this.state = {
userId: JSON.parse(localStorage.getItem('logged')).id,
loginRole: localStorage.getItem('loggedRole')
}
};
Что я здесь не так делаю?
Спасибо!
РЕДАКТИРОВАТЬ: У меня нет идентификатора, если пользователь не вошел в систему. В этом весь смысл.:) Если пользователь не вошел в систему, он должен перенаправить обратно в /login.