问题
Is it possible to access resolved data of a route (-Resolver) inside a canActivate guard. Currently I can access the resolved data in the component by
ngOnInit() {
this.route.data
.subscribe((data: { example: Array<Object> }) => {
this.example = data.example;
console.log('example resolver', this.example);
});
}
How could I manage that in the canActivate guard? This is not working:
constructor(private route: ActivatedRoute) {}
canActivate(
route: ActivatedRouteSnapshot,
state: RouterStateSnapshot,
): boolean {
this.route.data
.subscribe((data: { example: Array<Object> }) => {
this.example = data.example;
console.log('example resolver', this.example);
});
}
回答1:
No, you can't because canActivate Method is called before resolve, so you can't get the data
Guard Processing:
canDeactivate
canLoad
canActivateChild
canActivate
resolve
来源:https://stackoverflow.com/questions/42652708/angular2-exploring-resolved-data-in-canactivate-guard