NgbModel ERROR TypeError: "this._modalStack не определен" - PullRequest
0 голосов
/ 26 мая 2020

У меня проблема, когда свойство _modalStack службы NgbModal не определено при использовании этой службы в другой службе, это служба, которую я использую для NgbModal:

import { Injectable } from '@angular/core';
import { HttpErrorResponse } from '@angular/common/http';
import { Observable } from 'rxjs';
import { LoggerService } from '@app/shared/logger.service';
import {
  NgbModalOptions,
  NgbModal,
  NgbModalRef,
} from '@ng-bootstrap/ng-bootstrap';
import { ErrorHandlingModalComponent } from '@app/error-handling-modal/error-handling-modal.component';

@Injectable({
  providedIn: 'root',
})
export class ErrorService {
  constructor(private modal: NgbModal, private loggerService: LoggerService) {
  }
  // Errors
  handleError(error: HttpErrorResponse): Observable<never> {
    this.showModal(error.status);
    return this.loggerService.handleError(error);
  }

  public showModal(code: number) {
    if ([401, 403, 500].includes(code)) {
      console.log(this.modal);
      const ngbModalOptions: NgbModalOptions = {
        backdrop: 'static',
        keyboard: false,
      };
      const modalRef = this.modal.open(
        ErrorHandlingModalComponent,
        ngbModalOptions
      );
      this.updateModal(code, modalRef);
    }
  }

  public updateModal(code: number, modal: NgbModalRef) {...nothing important here...}

Самое смешное, что когда я использую тот же лог c из showModal(...) в компоненте, он работает! не уверен, почему он не подходит для этой службы ..

Это ошибка, которую я получаю в консоли:

enter image description here

Спасибо за вашу помощь :)

...