Как сказать, если аутентифицированы - PullRequest
0 голосов
/ 30 мая 2019

Я использую пакет ng-oidc-client и в навигационной панели пытаюсь использовать оператор ngIf. Проблема, с которой я сталкиваюсь, заключается в определении того, является ли пользователь аутентифицированным.

// -------------------- navbar.component.ts ---------------
// Imports for the library
import { OidcFacade } from 'ng-oidc-client';
import { User } from 'oidc-client';

// Constructor
constructor(private oidcFacade: OidcFacade) {}

// Method
isAuthenticated() {
    let isLoggedIn = this.oidcFacade.loggedIn$;
    if (!isLoggedIn) return false;
    return isLoggedIn;
}


// navbar.component.html
<li class="nav-item" [routerLinkActive]='["link-active"]' *ngIf="isAuthenticated() == true">
   <a class="nav-link" (click)='signOutRedirect()'>Sign Out</a>
</li>

1 Ответ

0 голосов
/ 30 мая 2019

Предполагая, что создатель библиотеки следовал соглашению об именах для наблюдаемого, this.oidcFacade.loggedIn$ - это тип логического наблюдаемого.

Все, что вам нужно сделать, это использовать канал async.*ngIf="oidcFacade.loggedIn$ | async"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...