С подпиской понял, спасибо.
С 'onHide' не очень понятно. Открыто модально окно, из него открыто другое модальное окно. В обоих подписались на 'BsModalService.onHide'. Закрылось последнее окно, событие получили оба подписчика. Как понять, чьё именно это событие, если в качестве параметра 'onHide' приходит просто строка с указанием причины закрытия или null (если закрыто кодом без указания причины)?
А если событие не перехватывать, получается, что при закрытии окна самим 'bootstrap', значение 'result' никогда не будет установлено, а значит и подписка, дажче через 'result.pipe(takie(1)).subscribe' зависнет в ожидании навсегда. Или такая подписка сбросится, если объект компонента будет уничтожен? Или сброщик мусора не будет уничтожать объект, на свойство которого кто-то подписан?
И есть ли какая-нибудь возможность отловить событие, когда сборщик мусора собирает объект? Какой-нибудь аналог деструктора из других языков? Тогда хоть попроще будет самостоятельно исследовать поведение.
Последний раз редактировалось kotelok, 27.08.2018 в 14:33.
|