Angularjs 任何Instance的AngularUI引导模式关闭事件

Angularjs 任何Instance的AngularUI引导模式关闭事件,angularjs,angular-ui-bootstrap,Angularjs,Angular Ui Bootstrap,我使用的是UI引导AngularUI,我需要在任何模式关闭时调用一个函数。 我知道我可以在特定模态实例关闭时调用函数,如下所示: modalInstance.result.finally(function(){ console.log('Modal closed'); }); 在jQuery中,对于任何情况,我都会这样做: $(document).on('hidden.bs.modal', function () { console.log('Modal closed'); }

我使用的是UI引导AngularUI,我需要在任何模式关闭时调用一个函数。 我知道我可以在特定模态实例关闭时调用函数,如下所示:

modalInstance.result.finally(function(){
    console.log('Modal closed');
});
在jQuery中,对于任何情况,我都会这样做:

$(document).on('hidden.bs.modal', function () {
    console.log('Modal closed');
});

但是如何使用AngularJS实现这一点呢?

您可以这样做:

myApp.controller('ModalCtrl', ['$scope', '$modal', function($scope, $modal) {
    $scope.open = function() {
        var modalInstance = $modal.open({
            templateUrl: 'modal.html',
            controller: 'ModalInstanceCtrl',
            resolve: {
                params: function() {
                    return {
                        key: 'value',
                        key2: 'value2'
                    };
                }
            }
        });
        modalInstance.result.then(
            function(result) {
                console.log('called $modalInstance.close()');
                alert(result);
            },
            function(result) {
                console.log('called $modalInstance.dismiss()');
                alert(result);
            }
        );
    };
}])
你可以从你的
控制器
中找到一些东西

myApp.controller('ModalInstanceCtrl', ['$scope', '$modalInstance', 'params', function ($scope, $modalInstance, params) {
    console.log(params);

    $scope.ok = function () {
        $modalInstance.close('this is result for close');
    };

    $scope.cancel = function () {
        $modalInstance.dismiss('this is result for dismiss');
    };
}]);
在这上面发现了一把整齐的小提琴:

嗨,塔拉瓦,你能回答这个问题吗