День добрый. При загрузке страницы (в app.component) достается пользователь и записываться в поток. account.component подключается по адресу /account. Если открыть страницу /account - данные из потока достаются без проблем. Но если сначала открыть какую-то другую страницу, а потом перейти на /account, данных из потока не видно. Может кто-то подсказать, в чем проблема? Спасибо
P.S. @Input для передачи данных не подходит, т.к. обращение к ним будет идти из top-navigation и router-outlet
<!-- app.component.html -->
<top-navigation></top-navigation>
<router-outlet></router-outlet>
<page-footer></page-footer>
//app.component
public ngOnInit(): void {
if (localStorage.getItem(AuthTokenName)) {
this.userService.getUser().then(
(user) => this.userService.setUser(user),
() => {
this.userService.logout();
this.router.navigate(['/']);
}
);
}
}
//service
private userSource = new Subject();
public user = this.userSource.asObservable();
public setUser(user) {
this.userSource.next(user);
}
//account component
public ngOnInit(): void {
this.userService.user.subscribe((user) => this.user = user);
}