AngularJS:关闭模态时的函数调用

时间:2015-06-18 10:50:57

标签: angularjs modal-dialog

我想这是一个非常简单的答案,但我找不到合适的语法。

我有这样的模态开场,

$scope.assignment = function (groupId) {
    var modalInstance = $modal.open({
        templateUrl: 'assignment_form',
        controller: 'GroupsAssignmentController',
        windowClass: 'modal-user-window',
        resolve: {
            id: function () {
                return groupId;
            }
        }
    });

我想要做的就是在关闭模态时运行一个函数,这样我的主屏幕就会更新。

我不确定这是否涉及$ modal.close?

    $modal.close({
    //getAllGroups();
    });

1 个答案:

答案 0 :(得分:7)

modalInstance.result.finally(function(){ 
    // do your work here
});

您也可以使用

then(successCallback, errorCallback, notifyCallback) 

当承诺得到解决时,SuccessCallback超越了。拒绝承诺时执行errorCallback。最后通知后会执行notifyCallback。

对于angular-ui的模态,点击背景将导致拒绝承诺。考虑到这一点,您的代码可以更改为:

modalInstance.result.then(function () {
  alert('Modal success');
}, function () {
  alert('Modal dismissed');
});