Диалоговое окно Angular Material - отправка данных при закрытии - PullRequest
0 голосов
/ 07 ноября 2018

Есть ли способ отправить данные из диалогового окна «родителю», когда он близко (даже когда пользователь нажимает вне сайта или нажимает ESC)?

В настоящее время у меня есть родитель с:

РОДИТЕЛЕЙ:

open(){
    const dialogRef = this.dialog.open(ModalinvitarComponent, {
      width: '90%',
      maxWidth: '520px'
    });
    dialogRef.afterClosed().subscribe(result => {
      console.log(result)
    });
}

когда модальное окно закрыто, результаты получают "undefined"

Я могу отправить некоторые данные с модальной линии, используя:

this.dialogRef.close(true)

тогда я получаю "true" в ответ, но я хотел бы отправить данные, даже когда пользователь закрывает модальное нажатие за пределами модального режима или нажимает ESC.

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

1 Ответ

0 голосов
/ 07 ноября 2018

Если вы хотите изменить данные по умолчанию, вот как вы продолжаете.

dialogRef.afterClosed().pipe(
  map(result => !result ? 'Default data' : result),
).subscribe(...);

Этот тест будет проверять ложные значения ('', undefined, null, 0 ...), и, поскольку в диалоговом окне по умолчанию возвращается значение '', он заменяет его на 'Default data'.

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