Я реализовал AuthGuard
в угловых. Код использует имя компонента для проверки:
export class AuthGuard implements CanActivate {
constructor(private permissionService: PermissionService, private router: Router) {}
canActivate(
next: ActivatedRouteSnapshot,
state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {
let component = next.component;
let componentName = component["name"];
let params = next.params;
return this.permissionService.checkPermission( componentName, params);
}
}
Этот код работает в ng serve
тестировании. Но при сборке и развертывании приложения на веб-сервере component["name"]
не является исходным именем компонента, а дает jung.
Есть идеи по этому вопросу? Спасибо.