Почему *ngIf всегда в else?

Подскажите в чем причина, такого поведения *ngIf - всегда срабатывает else и соответственно mat-spinner крутиться постоянно даже когда данные уже в observable. Проверял с http запросом и все работает как надо. В чем ошибка и как исправить данную проблему?Возможно сервис не правильно написан. Заранее всем спасибо. Код сервиса:

    getCerts(): Observable<any> {
    const editorExtensionId = 'sdfsdf';
    const message = {
      cmd: 'sdfsdf',
      args: 'sdfsdf',
    };
    return new Observable<UserKey>(observer => {
      chrome.runtime.sendMessage(editorExtensionId, message, res => {
        observer.next(res);
        observer.complete();
       });
     });
    }

И код компоненты:

  <ng-container *ngIf="certs$ | async as cert; else loading">
    <app-auth [cert]="cert">
    </app-auth>
  </ng-container>
  <ng-template #loading>
    <mat-spinner>
    </mat-spinner>
  </ng-template>
</app-layout-auth>

      certs$: Observable<UserKey>;
  constructor( private authService: AuthService) {
  }

  ngOnInit(): any {
    this.certs$ = this.authService.getCerts();
  }

Ответы (0 шт):