kendo for component javascript jquery twitter-bootstrap angularjs angular-ui

javascript - for - kendo ui grid angular 4



ui angular modal después del evento cerrado (2)

Angular 1.2 admite promesas con un finally(callback) :

dialog.result.finally(function() { alert(''clean up resources''); });

Vea el plunker de trabajo aquí .

¿Hay alguna manera de llamar a una función después de llamar a una ventana modal (no importa si sucedió con un botón o haciendo clic en el fondo)

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'' }); });

Quiero que cada vez que las ventanas modales cierren la función en el resultado, se ejecute la promesa. Ahora solo se ejecuta cuando cierro el modal manualmente my $ modalInstance.close (). Pero si hago clic en el fondo este método no se llama

alguna idea de cómo puedo hacer esto?


Asumiré que estás usando los cuadros de diálogo Modal de angular-ui. Pero antes de entrar en detalles, se necesita un poco de documentación sobre las promesas en AngularJS. Necesita saber que cada función entonces puede aceptar 3 parámetros como tales:

then(successCallback, errorCallback, notifyCallback)

  • successCallback se ejecuta cuando se resuelve la promesa.
  • errorCallback se ejecuta cuando se rechaza la promesa.
  • notifyCallback se ejecuta cuando se le notifica.

En el caso del modal de angular-ui, al hacer clic en el fondo dará como resultado una promesa rechazada. Con esto en mente, su código podría cambiarse a:

dialog.result.then(function () { alert(''Modal success at:'' + new Date()); }, function () { alert(''Modal dismissed at: '' + new Date()); });

Puedes ver un plunker que funciona aquí