在Angular UI Bootstrap的模态中调用esc上的回调函数

far*_*lfo 11 modal-dialog angularjs angular-ui-bootstrap

我正在使用一个Angular UI Bootstrap模式,可以通过Cancel按钮或通过ESC关闭.由于我必须在关闭时进行一些清理,我在范围内编写了"取消"方法,但这只在单击此取消按钮时调用,如何在ESC关闭时调用此清洁功能?

pko*_*rce 22

当模态被解除时(通过按ESC或单击背景),$modal.open方法调用返回的保证将被拒绝.因此,您可以通过向返回的promise添加错误处理程序来对ESC按下做出反应.这在图示的例子中可以从演示页:http://plnkr.co/edit/xMTr78WJQbKyHsA53gyv?p=preview (见本线:$log.info('Modal dismissed at: ' + new Date());)


Gun*_*ram 8

谢谢@ pkozlowski.opensource

我直接知道该怎么做:)

var modalWindow = $modal.open({
    windowClass: 'modal myKewlDialog',
    templateUrl: 'views/modals/myKewlModalTemplate.html',
    controller: 'myKewlModalController'
});

modalWindow.result.then(function (result) {
    updateUI();
}, function (result) {
    updateUI();
});
Run Code Online (Sandbox Code Playgroud)