6
我正在使用JWT对用户进行身份验证。我的angular2应用程序中的部分路径受CanActivate Guard保护,如果用户未登录,它将重定向到登录页面。现在我正在实施登出按钮,并且希望重定向到登录页面。我只想在未登录的用户(例如帐户页面)上看不到当前路由时才重定向。如果用户是例如在主页,我不想重定向到登录页面。Angular2:触发当前路由防护 - 处理注销操作
这将是完美的,如果我可以检查当前路线是否有警惕并触发这名警卫,如果它存在。有可能做到这一点?
后卫:
public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
if (this.loginService.getCurrentUserName()) {
// logged in so return true
return true;
}
// not logged in so redirect to login page with the return url
this.router.navigate(['/login'], { queryParams: { returnUrl: state.url }});
return false;
}