相关疑难解决方法(0)

试图了解CanActivate和CanActivateChild之间的差异

所以,我试图通过使用警卫来保护对多条路线的访问.我正在使用以下路由来执行此操作:

const adminRoutes : Routes = [
  {
    path: 'admin',
    component: AdminComponent,
    canActivate: [ AuthGuardService ],
    children : [
      {
        path: '',
        canActivateChild: [ AuthGuardService ],
        children: [
          { path: 'edit', component: DashboardComponent},
          { path: '', component: DashboardComponent}
        ]
      }
    ]
  }
];
Run Code Online (Sandbox Code Playgroud)

这是一个AuthGuardService看起来像什么的看

import { Injectable } from '@angular/core';
import {CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot} from "@angular/router";

@Injectable()
export class AuthGuardService implements CanActivate{

  constructor(private router: Router) { }

  canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot){
    console.log("Guarding...");
    return this.sessionValid();
  }

  canActivateChild(route: ActivatedRouteSnapshot, …
Run Code Online (Sandbox Code Playgroud)

angular2-guards angular

9
推荐指数
1
解决办法
4480
查看次数

标签 统计

angular ×1

angular2-guards ×1