Я разрешения пользователя перед доступом фрагмент на счет моего пользователя страницы:Как вызвать маршрут распознаватель вручную
АПП-routing.component.ts
{
path: 'users/:id',
component: UserComponent,
resolve: {user: UsersService},
children: [
{path: '', pathMatch: 'full', redirectTo: 'account'},
{path: 'account', component: UserAccountComponent},
{path: 'sites', component: UserSitesComponent}
]
}
users.service.ts
resolve(route: ActivatedRouteSnapshot, r: RouterStateSnapshot) {
return this.getUser(route.params['id']);
}
пользовательского account.component.ts
ngOnInit() {
this.route.parent.data.subscribe(data => {
this.user = data['user'];
// Initialize the form and its validators
this.initForm();
});
}
В компоненте учетной записи пользователя можно сохранить или сбросить форму. В обоих случаях я хотел бы обновить пользователя компонента и сбросить форму и валидаторы. В идеале, он хотел бы, чтобы подписка была активирована снова.
Любая идея, как вызвать преобразователь вручную?
(Я использовал повторное перемещение по тому же маршруту по модулю случайного числа в качестве последнего фрагмента, но так как я взорвал свою пользовательскую страницу в маршрутах родителя/ребенка, резольвер внутри родителя больше не вызывается, когда последние изменения фрагмента)
Альтернативой может быть использование службы вместо преобразователя. Пользовательская стратегия повторного использования также может работать, как указано в http: // stackoverflow.ком/вопросы/39762485/Требуется к предотвращению компонентной-оздоровительной-While-маршрутизации-в-угловой-2/39763254 # 39763254 –