У вас, вероятно, есть небольшое представление о том, как работает React Router. В вашем примере React Router работает так же, как и должен, поскольку вы просто визуализируете компоненты.
Вы должны использовать <Redirect />
-компонент React Router для перенаправления пользователя на новый URL.
Вы можете достичь желаемого поведения с помощью этого примера кода.
<Route
path='/match'
render={
() => {
if(this.state.auth){ return <HomePage /> }
else { return <Redirect to="/login" /> }
}
}
/>
<Route match="login" component={Login} />
Вы также можете достичь такого же поведения внутри компонента программно, используя React Router, предоставленную опору props.history.push('/login')
внутри компонента.