import { Injectable } from '@angular/core'; import { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; import { AccountService } from './account.service'; @Injectable({providedIn: 'root'}) export class AuthGuard implements CanActivate { constructor(private router: Router, private accountService: AccountService) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { const user = this.accountService.userName; if (user) { return true; } this.router.navigate(['/login'], {queryParams: {returnURL: state.url}}); return false; } }