0
我有一個組件可以在加載時解析路由中的數據。如何訂閱已解析的路由數據的更改 - Angular 2
我的挑戰是,只要組件呈現的數據發生更改,組件不會更新,除非我刷新頁面,或切換到另一條路線並返回。
我知道這是因爲數據只有在訪問路由時纔得到解決。
有沒有解決這個問題的方法,以便我可以訂閱已解決數據的更改?
下面是相關的代碼塊。
routes.ts
{
path: 'user-information',
component: UserInformationComponent,
resolve: { userData: UserDataResolver }
}
resolver.ts
@Injectable()
export class UserDataResolver implements Resolve<any> {
constructor(
private userService: UserService
) {};
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<IUser> {
return this.userService.currentUser().first();
};
};
user.component.ts只有
loadUserData() {
this.route.data.subscribe(
data => this.userData = data,
error => this.updateForm.disable()
);
};