угловой материал: невозможно прочитать свойство 'openDialogs' из неопределенного - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь написать тест для компонента, который использует MatDialog. Но тест не пройден с вышеупомянутой ошибкой.

Вот еще несколько подробностей о том, где происходят ошибки:

  at MatDialogTitle.Object.<anonymous>.MatDialogTitle.ngOnInit (node_modules/@angular/src/lib/dialog/dialog-content-directives.ts:91:73)
  at checkAndUpdateDirectiveInline (../packages/core/src/view/provider.ts:205:15)
  at checkAndUpdateNodeInline (../packages/core/src/view/view.ts:429:14)

Я использую проприетарную Mocking-Framework, которая высмеивает компоненты и директивы. Я предполагаю, что я должен предоставить больше информации по этим макетам, чтобы MatDialog работал правильно.

Кто-нибудь может дать мне подсказку в правильном направлении?

1 Ответ

0 голосов
/ 24 января 2019

Решено:

Мне нужно было предоставить макет MatDialog-Class

  providers: [
    { provide: MatDialog, useClass: MockDialog },
  ],

с соответствующим макетом:

class MockDialog {}

MatDialog вводится в директиву MatDialogTitle, поэтому в списке поставщиков должен присутствовать MatDialog-Mock, иначе он будет неопределенным.

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