angulaire de l'interface utilisateur modal après la clôture de l'événement
Est-il une manière que je peux appeler une fonction après une fenêtre modale ai appelé (peu importe si c'est arrivé à un bouton ou en cliquant sur la toile de fond)
var dialog, options;
options = {
windowClass: "lightBox"
templateUrl: "url to the template",
controller: "some random controller",
scope: $scope
});
$("body").css({
'overflow': 'hidden'
});
dialog = $modal.open(options);
dialog.result.then(function() {
$("body").css({
'overflow': 'auto'
});
});
Je veux que chaque fois que les fenêtres modales ferme de la fonction dans le résultat.alors la promesse est exécutée. Maintenant, il s'exécute lorsque j'ai fermer la modale manuellement mon $modalInstance.close(). Mais si je clique sur la toile de fond de cette méthode n'est pas appelée
une idée de comment je peux faire cela?
Vous devez vous connecter pour publier un commentaire.
Je vais supposer que vous utilisez les boîtes de dialogue Modales de angular-ui. Mais avant d'entrer dans les détails, un peu de documentation autour de promesses dans AngularJS est nécessaire. Vous devez savoir que chaque puis fonction accepte 3 paramètres en tant que tel :
Dans le cas de l'angulaire de l'interface utilisateur de modal, en cliquant sur la toile de fond entraînera le refus de la promesse. Avec cela à l'esprit, votre code peut être changé :
Vous pouvez voir un plunker ici
Angulaire 1.2 prend en charge promesses avec un
enfin(rappel)
:Découvrez le travail plunker ici.
finally
ne fonctionne pas avec IE8. Correction Possible ici - antonydenyer.co.royaume-uni/blog/2014/08/22/...