我有一个登录页面,成功登录后我需要转到我的主页。该登录功能登录到 ldap 服务器并发送响应,无论身份验证是否成功。我不希望它保留在本地存储中,因为这个应用程序只有两个页面。登录和主页。当登录成功时,它应该重定向到主页,如果没有,它应该再次重定向到登录页面。
请在浏览器中使用console.log,“inside auth guard true”会打印数千次..
我的 app.component.html 中唯一的代码是<router-outlet></router-outlet>
我有一个登录页面,成功登录后我需要转到我的主页。该登录功能登录到 ldap 服务器并发送响应,无论身份验证是否成功。我不希望它保留在本地存储中,因为这个应用程序只有两个页面。登录和主页。当登录成功时,它应该重定向到主页,如果没有,它应该再次重定向到登录页面。
请在浏览器中使用console.log,“inside auth guard true”会打印数千次..
我的 app.component.html 中唯一的代码是<router-outlet></router-outlet>
在 canActivate() 中,您需要做的就是返回 true 或 false。当您从函数内部将其重定向到主页时,您将进入无限循环。
这是因为在重定向到主页时会调用 canActivate() 并且它需要一个布尔返回值。如果值为 false,则不会加载组件。
canActivate() {
if (this.authService.loggedIn) {
console.log('Inside Auth Gaurd');
return true;
}
console.log('auth gaurd false path');
return false;
}
有关 canActivate() 的更多详细信息,请参阅此