From 97d46d586986743d659b7f6f462272d2f88392d8 Mon Sep 17 00:00:00 2001 From: lukasss88 Date: Mon, 27 Oct 2025 13:37:52 +0100 Subject: [PATCH] feat: answer:60 async-redirect solution --- .../60-async-redirect/src/app/dashboard.ts | 18 ++++-------------- .../60-async-redirect/src/app/routes.ts | 7 +++++++ 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/apps/angular/60-async-redirect/src/app/dashboard.ts b/apps/angular/60-async-redirect/src/app/dashboard.ts index 377c5e81d..6171f54bb 100644 --- a/apps/angular/60-async-redirect/src/app/dashboard.ts +++ b/apps/angular/60-async-redirect/src/app/dashboard.ts @@ -1,6 +1,5 @@ -import { ChangeDetectionStrategy, Component, inject } from '@angular/core'; -import { Router, RouterLink, RouterOutlet } from '@angular/router'; -import { UserProfileService } from './user-profile.service'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { RouterLink, RouterOutlet } from '@angular/router'; @Component({ selector: 'app-dashboard', @@ -13,7 +12,7 @@ import { UserProfileService } from './user-profile.service'; @@ -22,13 +21,4 @@ import { UserProfileService } from './user-profile.service'; changeDetection: ChangeDetectionStrategy.OnPush, imports: [RouterOutlet, RouterLink], }) -export class Dashboard { - private router = inject(Router); - private userProfile = inject(UserProfileService); - - navigate() { - this.userProfile.getProfile().subscribe((profile) => { - void this.router.navigate(['/', profile]); - }); - } -} +export class Dashboard {} diff --git a/apps/angular/60-async-redirect/src/app/routes.ts b/apps/angular/60-async-redirect/src/app/routes.ts index 4a0f11835..39b0020d6 100644 --- a/apps/angular/60-async-redirect/src/app/routes.ts +++ b/apps/angular/60-async-redirect/src/app/routes.ts @@ -1,9 +1,11 @@ +import { inject } from '@angular/core'; import { Routes } from '@angular/router'; import { AdminPage } from './admin-page'; import { App } from './app'; import { Dashboard } from './dashboard'; import { ProfilePage } from './profile-page'; import { UserPage } from './user-page'; +import { UserProfileService } from './user-profile.service'; export const routes: Routes = [ { @@ -12,6 +14,11 @@ export const routes: Routes = [ children: [ { path: '', pathMatch: 'full', component: Dashboard }, { path: 'profile', component: ProfilePage }, + { + path: 'account', + pathMatch: 'full', + redirectTo: () => inject(UserProfileService).getProfile(), + }, { path: 'admin', component: AdminPage }, { path: 'user', component: UserPage }, ],