У меня есть компонент 'панель' с двумя дочерними панелями и выходными.Оба эти дочерних маршрута получают данные об их ngOnInit от службы родительского компонента.
Все работает нормально, и панель мониторинга загружается с данными, если мы идем обычным способом, но если мы перезагружаем дочерний маршрут, это неполучение данных родительской службы.
Как решить эту проблему?
Модуль маршрутизации: -
{
path: 'panel',
component: PanelComponent,
canActivate: [AuthGuard],
children: [
{
path: 'dashboard',
component: DashboardComponent,
},
{
path: 'holidays',
component: HolidaysComponent
}
]
}
panelComponent.ts: -
export class PanelComponent implements OnInit {
constructor(private panelService: PanelService, route: ActivatedRoute, private router: Router) {
}
ngOnInit() {
this.panelService.getUserProfile().subscribe(
res => {
this.panelService.userDetails = res;
this.router.navigate(['panel/dashboard'])
},
err => {
console.log(err);
},
);
}
DashboardComponent.ts: -
export class DashboardComponent {
/** dashboard ctor */
private userDetails = {
name:""
}
constructor(private panelService: PanelService) {
}
ngOnInit() {
//console.log(this.panelService.userDetails.profileDetails[0].name);
this.userDetails.name=this.panelService.userDetails.profileDetails[0].name
}