Вместо того, чтобы писать жестко закодированные маршруты для аутентификации, вы должны вместо этого написать HOC AuthRoute,
const AuthRoute = ({component: Component, ...rest}) => {
if(isAuth) {
return <Route {...rest} component={Component} />
}
return <Redirect to="/" />
}
и использовать его как
<React.Fragment>
{/* <Redirect exact from="/" to="/dashboard" /> */}
<AuthRoute path="/" exact component={props => <Dashboard {...props} />} />
<AuthRoute path="/dashboard" exact component={props => <Dashboard {...props} />} />
<AuthRoute path="/settings/" exact component={props => <Settings {...props} />} />
</React.Fragment>
Любой маршрут, который вы не хотите аутентифицировать, будет записан как обычный маршрут