Angular · Middle · Запитання 29 з 75
Що повертає функціональний guard, щоб перенаправити користувача?
export const authGuard: CanActivateFn = () => {
const auth = inject(AuthService);
const router = inject(Router);
return auth.isLoggedIn() ? true : router.createUrlTree(["/login"]);
};- ✓Правильна відповідь:
UrlTree(абоRedirectCommand) - він скасовує навігацію й перенаправляє - 2
falseразом ізwindow.location.href - 3Кидає помилку, яку роутер перетворює на редирект
Пояснення
Guard може повернути boolean, UrlTree, RedirectCommand або їхній Observable/Promise. Повернення UrlTree позбавляє від гонки навігацій, що виникає під час виклику navigate всередині guard'а.