防角卫不重定向到指定的URL。而是显示空白屏幕

时间:2018-09-19 17:41:59

标签: routing angular-ui-router

@Injectable()
export class AdminGuard implements CanActivate {

  constructor(

    public ftSubmitResponse: ResponseService,
    private router: Router) { }

  canActivate() {
    if (this.ftSubmitResponse.isenggAccount) {
      return true;

  }
  return false;
  }
}

我在route.guard文件中使用gaurd的方式是-

   path: 'retail',  children: [

  { path: 'custom', component: engComponent, canActivate: [AdminGuard] }]

我不知道我做错了什么。还有什么其他方法可以实施警卫队。如果isenggAccount登录并在存在gaurd的页面上刷新,它将显示空白屏幕。

1 个答案:

答案 0 :(得分:0)

https://angular.io/api/router/CanActivate

canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)

您需要路由和状态快照,以便Angular可以为您的后卫提供上下文。