Files
syscom-master-admin-ui/src/app/shared/components/page-header/page-header.ts
T
2026-07-24 11:55:27 +05:30

35 lines
981 B
TypeScript

import { Component, input } from '@angular/core';
import { ChildrenOutletContexts, NavigationEnd, Router } from '@angular/router';
import { filter } from 'rxjs';
@Component({
selector: 'app-page-header',
templateUrl: './page-header.html',
styleUrls: ['./page-header.scss']
})
export class PageHeader {
parentTitle?: string;
subParentTitle?: string;
childTitle?: string;
constructor(
private router: Router,
private childrenOutletContexts: ChildrenOutletContexts
) {
this.router.events
.pipe(filter(event => event instanceof NavigationEnd))
.subscribe(() => {
const context = this.childrenOutletContexts.getContext('primary');
const routeData = context?.route?.snapshot?.data;
if (routeData) {
this.childTitle = routeData['childTitle'] ?? '';
this.parentTitle = routeData['parentTitle'] ?? '';
this.subParentTitle = routeData['subParentTitle'] ?? '';
}
});
}
}