Angularjs 检查$modal是否与$dialog.isOpen类似打开

Angularjs 检查$modal是否与$dialog.isOpen类似打开,angularjs,modal-dialog,migration,angular-bootstrap,Angularjs,Modal Dialog,Migration,Angular Bootstrap,我正在从AngularJS 1.1.15迁移到1.3.15,目前的问题是让$modal工作,而不是$dialog 如果任何人有任何关于迁移的有用链接,我将不胜感激:)我目前正在处理每一个错误修复 就我目前的问题: 我以前的代码如下所示: var msgBox = $dialog.dialog({ ... }); msgBox.open().then(......); 我把它改成了 var msgBox = $modal.open(...); msgBox.opened.then(......)

我正在从AngularJS 1.1.15迁移到1.3.15,目前的问题是让$modal工作,而不是$dialog

如果任何人有任何关于迁移的有用链接,我将不胜感激:)我目前正在处理每一个错误修复

就我目前的问题: 我以前的代码如下所示:

var msgBox = $dialog.dialog({ ... });
msgBox.open().then(......);
我把它改成了

var msgBox = $modal.open(...);
msgBox.opened.then(......);
所以现在我遇到的问题是如果:

if (msgBox && msgBox.isOpen())
如何使用$modal实现它?从表面上看,我看不到有一个替代品

在大多数stackoverflow问题上,我看到有人建议使用jQuery,但它相当混乱,我宁愿避免这样做

感谢您的帮助

我不知道有任何“开箱即用”的解决方案,因此我通过检查
$model.result
承诺中的状态来检查$model是否打开或关闭。这是:

  • 待定(0)
  • 已解决(1)
  • 拒绝(2)
您可以检查模态是否打开,如下所示:

$modal.result.$$state.status === 1;
关闭时,
状态变为
2

希望能有帮助