Как сделать так, чтобы модальное окно NG Zorro оставалось открытым после отклонения обещания - PullRequest
1 голос
/ 04 августа 2020

Я знаю, что вы можете сделать модальное окно открытым, вернув false из поля nzOnOK:

this.modal.confirm({
      nzTitle: 'Do you Want to delete these items?',
      nzContent: 'When clicked the OK button, this dialog will stay opened',
      nzOnOk: async () =>{
        return false;
      }
    });

Но в моем случае у меня есть метод, вызываемый из службы, который может возвращать отказ от обещания или нет .

Я хотел бы, чтобы модальное окно оставалось открытым в случае сбоя вызова службы. чтобы оставаться открытым в случае отклонения обещания.

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

1 Ответ

2 голосов
/ 04 августа 2020

Модальное окно должно оставаться открытым, обратный вызов - return false или Promise<false>:

Вот пример с обещанием:

export class MyService {
  someMethod() {
    return Promise.reject();
  }
}
...
nzOnOk: () => {
   return this.myService.someMethod().then(res => !!res).catch(() => false); 
}

Пример Stackblitz

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