【发布时间】:2019-10-21 21:12:24
【问题描述】:
我有一个组件“面板”,它有两个子路线仪表板和假期。 这两个子路由都从父组件服务获取有关其 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
}
【问题讨论】:
标签: angular angular7 angular-routing