当我尝试实现导航问题时,我的应用程序在没有身份验证保护的情况下可以正常运行。 问题是身份验证防护正在通过条件(使用console.log测试)。网址已更改为/ prpage,但viewport仍与我看到/ formpage的内容并没有正确导航至该页面(/ prpage)的位置相同。
app-router.module.ts
{
path: 'prpage',
component: PrPageComponent,
canActivate: [AuthGuard]
}
auth.guard.ts
canActivate(
next: ActivatedRouteSnapshot,
state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {
if (this.userService.id) {
console.log("pass");
return true;
}
this.router.navigate(['/register'], { relativeTo: this.route });
console.log("fail");
return false;
}
}
form.component.ts
if(response.name!==null){
this.router.navigate(['/prpage'], { relativeTo: this.route });
}