我正在从 AngularJS 1.1.15 迁移到 1.3.15,我当前的问题是让 $modal 而不是 $dialog 工作。
如果有人有任何有关迁移的有用链接,我们将不胜感激:)我目前正在处理每个错误修复。
对于我当前的问题: 我以前的代码如下所示:
var msgBox = $dialog.dialog({ ... });
msgBox.open().then(......);
我把它改成了
var msgBox = $modal.open(...);
msgBox.opened.then(......);
所以现在我遇到的问题是有一个 IF:
if (msgBox && msgBox.isOpen())
如何使用 $modal 实现它?来自 documentation here我没有看到 isOpen 的替代品。
在大多数 stackoverflow 问题上,我看到人们建议使用 jQuery,但它非常困惑,我宁愿避免这样做。
感谢您的帮助
最佳答案
我不知道有任何“开箱即用”的解决方案,因此我通过检查 $modal.result
中的状态来检查 $modal 是否打开或关闭 promise 。它们在这里:
- 待处理 (0)
- 已解决 (1)
- 已拒绝 (2)
您可以像这样检查模式是否打开:
$modal.result.$$state.status === 1;
当您关闭它时,状态
更改为2
。
希望有帮助。
关于angularjs - 检查 $modal 是否打开,类似于 $dialog.isOpen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30481138/