路由器导航在 Angular 中不工作

Router navigate is not working in Angular

我在我的 angular 项目中设置了路由,下面是我在根模块中的路由

const appRoutes: Routes = [
  { path: '', component: LoginComponent },
  { path: 'dashboard', canActivate: [AuthGuard], component: DashboardComponent }
];

在我的 app.component.ts 中有我的 <router-outlet></router-outlet>.

在我的登录页面中,我有一个功能,一旦成功登录

,它就会导航到 http://localhost:4200/dashboard

login.component.ts

login() {
....
this.router.navigate(['dashboard'], {relativeTo: this.route});
....
}

现在的问题是当我在浏览器中执行 ng serve 并打开 localhost:4200 时,我将无法登录。只有在重新加载页面后,即 localhost:4200 我才能登录。

是什么阻止我在不重新加载的情况下登录这里?请告诉我:)

我认为当您尝试导航到路由 'dashboard' 时,路由守卫会拒绝您的操作,因为可能不是有效令牌或 AuthGuard 中的某些逻辑。您必须检查您的 AuthGuard