Как говорят Официальный документ диалога ,
, что "Кнопка, закрывающая текущий диалог" .
И его входное свойство для компонента диалога, как указано в @Input('mat-dialog-close')
mat-dialog-close
, будет всегда закрывать диалоговое окно, если оно щелкнуло, независимо от того, какое значение вы ему присвоите.Если вы хотите контролировать логику закрытия, сделайте это с (click)="seeIfCloseableOrNot()"
.
mat-dialog-close
является атрибутом, и он будет выполнять свою работу, над которой его добавили, а функциональность mat-dialog-close
заключается в закрытии диалога.
Вы можете использовать значение, присвоенное mat-dialog-close
, используяdialogRef.afterClosed()
Также см .: https://github.com/angular/material2/issues/9298
, так как присоединение какого-либо метода к mat-dialog-close
вызовет его много раз из-за обнаружения изменений.
См. Демонстрацию с несколькими вызовамифункции, связанной с matDialogClose