как отключить проверку для кнопки отмены в angular

#angular #angular-material #mat-dialog

Вопрос:

У меня есть кнопка отправки и отмены в моем диалоговом окне, когда я нажимаю на кнопку отправки, проверка работает, но я хочу, чтобы при нажатии на кнопку отмены форма закрывалась без необходимости проверки…Теперь, когда я нажимаю на кнопку отмены, проверка срабатывает, и во второй раз форма закрывается.

HTML-код:

 <button  mat-button (click)="closeDialog()" mat-flat-button>Cancel</button>
 

код ts:

   closeDialog(){
    this.dialogRef.close({event:'Cancel'});
  }
 

Как я могу закрыть форму одним щелчком мыши?
Спасибо…

Комментарии:

1. Трудно сказать без фактического воспроизведения вашего кода в stackblitz. Вы упоминаете проверку и отправку, поэтому я предполагаю, что вы используете <form> . Обратите внимание, что по умолчанию все кнопки в форме будут иметь тип submit . Если ваша кнопка закрытия находится внутри формы, попробуйте применить type="button" к ней.

Ответ №1:

вы можете использовать mat-dialog-close в своем теге кнопки, не нужна дополнительная функция

 <button mat-button mat-dialog-close mat-flat-button>Cancel</button>
 

угловой мат из материала-примеры диалогового окна

пример stackblitz

Комментарии:

1. Спасибо, я использовал ваш код, но мне все равно нужно два клика, чтобы закрыть диалоговое окно. Вторая ссылка , которую вы отправили , выдает ошибку … Спасибо, что проверили

2. Я исправил вторую ссылку, пожалуйста, добавьте больше кода к вашему вопросу для лучшей помощи. @Hodaja’fari