我使用AngularJS $模式服务(ui.bootstrap.modal)来显示一个对话框:
$modal.open({
templateUrl: 'resources/qad/qraview/view/qModalDialog.html',
controller: qModalDialogController,
backdrop: 'static',
keyboard: false,
resolve: {
modalOptions: function () {
return $scope.modalOptions;
}
}
});
对$ modal.open的调用是异步的,并立即返回。由于我的程序流程,我需要$ modal.open来阻止,直到用户通过单击“确定”或“取消”解除对话框。有没有办法让$ modal.open同步?
答案 0 :(得分:3)
使用result属性返回的promise(如PSL所述)。然后代码看起来像这样:
$modal.open({
templateUrl: 'myModal.html',
controller: 'ModalDialogController',
})
.result.then(
function () {
alert("OK");
},
function () {
alert("Cancel");
}
);
这是一个fiddle