我正在使用AngularUI's modal,当模态关闭时,我想更改控制器的变量。
我的模态看起来像这样:
<div class="modal fade" id="awesomeModal" role="dialog">
...
<button type"button" data-dismiss="modal">Close</button>
</div>
我认为模态的关闭事件与data-dismiss
有关,但我还没有找到在这个特定时刻做某事的方法。
我想做的是在模态关闭时设置$scope.finished = true;
。
我知道我可以做<button type"button" data-dismiss="modal" ng-click="finished = false>Close</button>
之类的事情,但在我看来,这是一种更清洁的方法。
答案 0 :(得分:1)
由于您询问$ uibModal,以下是可用于捕获模态关闭事件的事件:
var modalInstance = $uibModal.open({
templateUrl: 'modules/alertTemplates/redirectToModal.html',
controller: 'redirectToController',
controllerAs: 'redirectToControllerVm',
keyboard: false
}
});
modalInstance.result.then(function () {
// called when you close the modal
// do your stuff
}, function () {
// called when you dismiss modal by clicking anywhere outside modal
// do your stuff
});
另外,如果您愿意,可以使用模板而不是templateUrl内联模式模板。 请参阅以下链接以获得更好的解释和所有语法:
https://github.com/angular-ui/bootstrap/tree/master/src/modal/docs