NgbModal - возвращает результат родителю при открытии субмодального - PullRequest
0 голосов
/ 18 июня 2019

Я использую NgbModal в своем компоненте под названием MyComponent, и после того, как я открою один модал в зависимости от действий пользователя, мне может понадобиться открыть другой модал из первого модала. Теперь я могу получить значение, возвращаемое при закрытии первого режима, как показано в примере https://medium.com/@izzatnadiri/how-to-pass-data-to-and-receive-from-ng-bootstrap-modals-916f2ad5d66e. Есть ли способ сделать это во втором модале, который открывается, чтобы он возвращал результат обратно в MyComponent?

Вот мой код, открытый первый модальный от MyComponent:

        let options:NgbModalOptions = {
            size: 'lg',
            backdrop: 'static'
        };

        const modalRef = this.modalService.open(Modal1Component, options);

Теперь внутри компонента Modal1Component я открываю второй модал с именем Modal2Component, когда пользователь нажимает кнопку следующим образом:

        this.closeModal();
        let options:NgbModalOptions = {
            size: 'lg',
            backdrop: 'static'
        };
        const modalRef = this.modalService.open(Modal2Component, options);

Как показано в коде выше, первый модальный Modal1Component закрывается перед открытием Modal2Component. Теперь я хочу вернуть результат из компонента Modal2 обратно в MyComponent после закрытия Modal2. Возможно ли это?

1 Ответ

0 голосов
/ 18 июня 2019

Вы можете сначала открыть второй модал, получить его обещание result и передать его в качестве аргумента при закрытии первого модала:

const modalRef = this.modalService.open(Modal2Component, options);
this.activeModal.close(modalRef.result);

Демо

...