Как показать модальное всплывающее окно при загрузке проекта только один раз, а не на странице обновления в угловых 2/4 - PullRequest
0 голосов
/ 22 мая 2018
 @HostListener('window:beforeunload',['event'])
  doSomething() {
}

код выше показывает модальное всплывающее окно при загрузке проекта, а также при обновлении страницы.

1 Ответ

0 голосов
/ 22 мая 2018
    implement popup functionality using Route Guards **CanActivate**.so when your route call event call and use localStorage for popup call only once.

        import {CanActivate} from "@angular/router";
        import {Injectable} from "@angular/core";


    @Injectable()
    export class Tosaccept implements CanActivate
    {
        constructor(){}

        canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot)
        {  
            return this.openTospopup();
            return true;
        }
        openTospopup(){
            console.log("isShow: ",localStorage["tosPopupData"]);

            if(localStorage["tosPopupData"]==undefined){
                localStorage["tosPopupData"] =false;
                console.log('openpopcodehere');
            }
        }
    }
and in you route file attach Canactivate like below
{ path: "",    component: IndexComponent, canActivate: [Tosaccept]}
...