src/app/_helpers/auth.guard.ts
Methods |
|
constructor(router: Router)
|
||||||
Defined in src/app/_helpers/auth.guard.ts:13
|
||||||
Parameters :
|
canActivate | |||||||||
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)
|
|||||||||
Defined in src/app/_helpers/auth.guard.ts:16
|
|||||||||
Parameters :
Returns :
Observable | Promise | boolean
|
Public isLoggedIn |
isLoggedIn()
|
Defined in src/app/_helpers/auth.guard.ts:26
|
Returns :
boolean
|
import { Injectable } from '@angular/core';
import {
ActivatedRouteSnapshot,
RouterStateSnapshot,
Router,
CanActivate,
} from '@angular/router';
import type { Observable } from 'rxjs';
@Injectable({
providedIn: 'root',
})
export class AuthGuard implements CanActivate {
constructor(private router: Router) {}
canActivate(
route: ActivatedRouteSnapshot,
state: RouterStateSnapshot
): Observable<boolean> | Promise<boolean> | boolean {
if (this.isLoggedIn()) {
return true;
}
this.router.navigate(['/auth']);
return false;
}
public isLoggedIn(): boolean {
let status = false;
if (localStorage.getItem('isLoggedIn') === 'true') {
status = true;
} else {
status = false;
}
return status;
}
}