UI: Fix menuSections subject.

This commit is contained in:
Igor Kulikov 2024-08-20 12:42:44 +03:00
parent 150285b9c9
commit 8febc1ed42
2 changed files with 4 additions and 4 deletions

View File

@ -31,7 +31,7 @@ import { NavigationEnd, Router } from '@angular/router';
export class MenuService {
currentMenuSections: Array<MenuSection>;
menuSections$: Subject<Array<MenuSection>> = new ReplaySubject<Array<MenuSection>>();
menuSections$: Subject<Array<MenuSection>> = new ReplaySubject<Array<MenuSection>>(1);
homeSections$: Subject<Array<HomeSection>> = new BehaviorSubject<Array<HomeSection>>([]);
availableMenuLinks$ = this.menuSections$.pipe(
map((items) => this.allMenuLinks(items))

View File

@ -15,10 +15,10 @@
///
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';
import { BehaviorSubject, mergeMap, Subject, Subscription } from 'rxjs';
import { BehaviorSubject, Subject, Subscription } from 'rxjs';
import { BreadCrumb, BreadCrumbConfig } from './breadcrumb';
import { ActivatedRoute, ActivatedRouteSnapshot, NavigationEnd, Router } from '@angular/router';
import { distinctUntilChanged, filter, first, map } from 'rxjs/operators';
import { distinctUntilChanged, filter, first, map, switchMap } from 'rxjs/operators';
import { TranslateService } from '@ngx-translate/core';
import { guid } from '@core/utils';
import { BroadcastService } from '@core/services/broadcast.service';
@ -58,7 +58,7 @@ export class BreadcrumbComponent implements OnInit, OnDestroy {
routerEventsSubscription = this.router.events.pipe(
filter((event) => event instanceof NavigationEnd ),
distinctUntilChanged(),
mergeMap(() => this.menuService.availableMenuSections().pipe(first())),
switchMap(() => this.menuService.availableMenuSections().pipe(first())),
map( (sections) => this.buildBreadCrumbs(this.activatedRoute.snapshot, sections) )
).subscribe(breadcrumns => this.breadcrumbs$.next(breadcrumns) );