Otwieram okno modalne za pomocą $ uibModal.open z innego kontrolera, i muszę być powiadomiony, gdy okno modalne zostało całkowicie zamknięte (a nie podczas zamykania. ..), więc będę mógł uruchomić funkcję.
Kod, który otwiera modalna jest następujący:
var modalInstance = $uibModal.open({
templateUrl: "myModalContent.html",
controller: "termModalCtrl",
windowClass: 'app-modal-window',
resolve: {
'params': function() { return id }
}
});
Widziałem kilka sugerowanych rozwiązań do wykorzystania:
modalInstance.result.then(function(result) {
});
Problem polega na tym, że funkcja zwrotna jest wywoływana przed faktycznym zamknięciu okna modalnego (gdy okno modalne jest nadal otwarte) i nie jest to zachowanie, które chcę, ponieważ oznacza to, że przechwytuje zdarzenie "zamknięcie", a nie "zamknięte" zdarzenie modalu.
Czy istnieje prosty i prosty sposób na wdrożenie tego? Byłbym zaskoczony, gdyby nie, ponieważ takie zachowanie jest bardzo powszechne w jakichkolwiek strukturach interfejsu użytkownika na świecie ...
Proszę o pomoc!
Próbowałem swoje rozwiązanie, ale to nie działa - Dostaję wyjątek „Nie można dostać właściwość "następnie" o niezdefiniowanej lub zerowej wartości odniesienia ". wydaje się, że właściwość "zamknięta" jest w jakiś sposób nieokreślona z powodu obietnicy zwróconej przez otwartą metodę ... –
Nie. Usuń plik modalInstance.result.then ... ze swojego kodu. – Srijith
Aby to działało, musimy zamknąć wyskakujące okienko przy pomocy $ uibModalInstance.close ('cancel'); ale NIE używa funkcji odrzucania. –