Вы должны использовать Guards в своем проекте, пример в документации: https://angular.io/api/router/CanActivate
Для достижения этого вам необходимо реализовать два компонента (один для аутентифицированного пользователя, другой для не аутентифицированного пользователя).Определите маршрут, например:
{
path: '',
component: AuthenticatedUserComponent,
canActivate: [AuthenticatedUserGuard]
},
{
path: '',
component: UnauthenticatedUserComponent
}
, а затем определите охрану:
@Injectable()
class AuthenticatedUserGuard implements CanActivate {
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean|UrlTree>|Promise<boolean|UrlTree>|boolean|UrlTree {
return true; // here you should call a method from service, that
// that holds whether user is authenticated or not
}
}