我正在尝试检查用户是否被授权,如果没有将他/她引导到登录页面。我实际上设法做到了,但我很难理解该机制是如何工作的。请看下面的代码。
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
let fus: FakeUserService = new FakeUserService();
if(!fus.authorization()){
this.router.navigate(['login']);
return false; // Code works even this line is commented out. The user is redirected to the login page.
}
return true;
}
我不明白的一点是 router.navigate 在这种情况下是如何工作的。当我注释掉“return false”时,用户是否会转到预期页面并导航回登录?还是“router.navigate”功能覆盖所有路由命令?我有点困惑。。