Полагаю, вы пропустили добавление в entryComponents и объявлений массивов в файле app.module.ts. Пожалуйста, добавьте это. Оповещение о материалах открывается автоматически через
let dialogRef = this.dialog.open(ModalComponent)
, вам не нужно снова открывать его внутри компонента.
import {ModalService} from './Components/ModalService.component';
declarations: [
.
.
.,
ModalService
],
entryComponents: [
.
.
.,
ModalService
]
Также, пожалуйста, не оставляйте атрибут mat-dialog-close вКнопки, просто добавьте функции щелчка, так как у вас есть какая-то операция, прежде чем модальное закрытие. Вы можете сделать это.
<mat-dialog-actions>
<button mat-button (click)="keepLoggedIn()">Keep me logged in</button>
<button mat-button (click)="logout()">Log out</button>
</mat-dialog-actions>
logout() {
this.dialogRef.close({data:[], status: 'success'});
}
keepLoggedIn() {
this.dialogRef.close({data:[], status: 'success'});
}