Я новичок, чтобы отреагировать, я работаю над реализацией базового процесса аутентификации с помощью Meteor, я использую React Router V4
для маршрутизации, ниже приведен код моих маршрутов, чтобы получить основную идею:
const routes = (
<Router history={history}>
<Switch>
<Route exact path="/" component={Login} onEnter={onEnterPublicPage}/>
<Route exact path='/signup' component={Signup} onEnter={onEnterPublicPage}/>
<Route exact path='/links' component={Link}/>
<Route exact path='*' component={NotFound}/>
</Switch>
</Router>
);
Вот базовый поток аутентификации, который я ожидаю:
Экран входа в систему> Главный экран (нажмите выход из системы)> Экран входа в систему
Этот процесс достигается с помощью приведенного ниже кода:
Tracker.autorun(() => {
const isAuthenticated= !!Meteor.userId();
console.log('isAuthenticated', isAuthenticated);
if (isAuthenticated && isUnAuthenticatedPage){
history.push('/links');
}
else if (!isAuthenticated && isAuthenticatedPage){
history.push('/');
}
});
Через этот код после выхода из системы, когда я получаю доступ к Root, т.е. к экрану входа в систему, при нажатии кнопки назад браузера я снова перенаправляюсь на главный экран, который не должен происходить в соответствии с ожидаемым потоком.Как мне справиться с этой ситуацией?
Я пытался очистить историю браузера после выхода из системы, но я считаю, что это не лучшая практика для достижения этой цели.Любая помощь будет оценена.Благодарю.