У меня есть приложение, которое использует AuthGuard для перенаправления на страницу входа, эта страница входа затем выполняет аутентификацию и перенаправляет обратно на домашнюю страницу.
После проб и ошибок я обнаружил, что следующий код, кажется, полностью нарушает навигацию (поэтому нажатие на меню ничего не делает):
Страница входа вызывает
this.layoutService.fullPage.next(true);
Это услуга, как показано ниже:
export class LayoutService {
fullPage: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
который прослушивается компонентом
this.fullPageSub = this.layoutService.fullPage.asObservable().subscribe(x => this.fullPageChild = x);
Этот fullPageChild затем используется для удаления частей пользовательского интерфейса:
<div class="layout-wrapper" (click)="onWrapperClick()"
[ngClass]="{'layout-wrapper-static': layoutMode === 'static',
'layout-wrapper-active': mobileMenuActive,
'layout-menu-horizontal': layoutMode === 'horizontal',
'layout-rtl': isRTL}" *ngIf="!fullPageChild">
Это немного сложное решение, но я имею дело с коммерческим шаблоном, в который я пытаюсь избежать внесения значительных изменений.
Итак, вопрос в том, почему это полностью нарушает навигацию, не имея в журналах ничего, что указывало бы на какую-либо проблему ???