angular8 routeguard canActivate не работает - PullRequest
0 голосов
/ 02 июля 2019

Недавно я обновил свой проект с angular7 на angular8, но у меня возникла проблема с routeguard. Перед обновлением проекта все в порядке. После этого он не работает.

canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {
        console.info(1);
        return new Promise<boolean>((resove, reject) => {
            this.authService.judgePass(state.url).subscribe(res => {
                console.info(3);
                switch (res.code) {
                    case -1:
                        break;
                    case 0:
                        resove(true);
                        break;
                    case 1:
                        this.showMsg(res.message);
                        this.router.navigate(['/manage/error']);
                        break;
                    case 2:
                        this.router.navigate(['/operate']);
                        break;
                    case 3:
                        break;
                    default:
                        break;
                }
            })
        });
    }

   judgePass(route: string): Observable<CommonResult> {
        const url = `${this.baseUrl}/check`;
        console.info(2);
        const formData = new FormData();
        formData.append('url', route);
        return this.httpClient.post<CommonResult>(url, formData, {});
    }

только консоль браузера распечатать1 и 2, я ожидаю распечатать все из них, 1,2 и 3. Как я могу сделать, чтобы получить правильный ответ? Спасибо всем вам

...