当前位置: 首页 > 面试题库 >

如何从任何地方关闭Angular UI Modal

祝俊雄
2023-03-14
问题内容

我正在使用Angular UI引导模式对话框,并在服务中创建它:

myApp.factory('ModalService', ['$modal', function($modal) {
    return {
        trigger: function(template) {
            $modal.open({
                templateUrl: template,
                size: 'lg',
                controller: function($scope, $modalInstance) {
                    $scope.ok = function() {
                        $modalInstance.close($scope.selected.item);
                    };
                    $scope.cancel = function() {
                        $modalInstance.dismiss('cancel');
                    };
                }
            });
        },
        close: function() {
            // this should close all modal instances
        }
    };
}]);

ModalService.close()从控制器或任何其他方式调用时,如何关闭所有模式实例?


问题答案:

注入$modalStack服务并调用函数$modalStack.dismissAll(),有关详细信息,请参见GitHub上的代码:

myApp.factory('ModalService', ['$modal', '$modalStack' function($modal, $modalStack) {
    return {
        trigger: function(template) {
            $modal.open({
                templateUrl: template,
                size: 'lg',
                controller: function($scope, $modalInstance) {
                    $scope.ok = function() {
                        $modalInstance.close($scope.selected.item);
                    };
                    $scope.cancel = function() {
                        $modalInstance.dismiss('cancel');
                    };
                }
            });
        },
        close: function(reason) {
            $modalStack.dismissAll(reason);
        }
    };
}]);


 类似资料:
  • 问题内容: 在Android中,是否有任何方法可以获取静态方式的应用程序上下文?例如,从后台线程检索它。 谢谢 问题答案: 最简单(也是正确的)方法是: 定义一个新类 然后,在清单中需要将此类添加到“应用程序”选项卡的“名称”字段中。或编辑xml并放入 然后可以从任何地方打电话 希望能帮助到你

  • 问题内容: 我的应用程序中有两个表。左表就像一个列表。单击左表将打开一个右表,其中包含基于我单击左表的字段的值。 现在的问题是,如果我在右表中编辑一个单元格,而不按Enter键并单击左表中的新项目,则所有表中的特定单元格都处于可编辑模式。以及所有表格的单元格值。 我该如何解决这个问题? 问题答案: 不能完全肯定,我明白你的感受VS你所期望的,但表的默认行为是有点出乎意料的是,当焦点转到表外的某个地

  • 我有一个Jframe(美因茨), 它有一个按钮(showDialog), 当用户单击该按钮时, jdialog (Dialogz) 将显示, 那个jdialog有一个按钮 如何从该按钮关闭jdialog(在jdialog内部)? 我可以在创建对话框的实例后更改对话框的模式吗? 我需要阻止jdialog的所有者 我试着。。。 非常感谢你的任何帮助

  • 问题内容: 在这里很难说出要问什么。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 7年前关闭。 我正在用python构建搜索引擎。 我听说Google会从ODP(开放目录项目)中获取页面的描述,以防Google无法使用页面中的元数据来找出描述…我想做类似的事情。 ODP是Mozilla的在线目录,其中包含对网

  • 问题内容: 我呈现的是一个没有任何按钮的UIAlertViewController,因为它应该只是通知用户正在进行上传。该应用程序应该将一些文件上传到Amazon S3(某些事情发生在并行线程上),而且我想关闭它时,恐怕对警报视图控制器的引用会丢失。 有什么问题的想法吗?我什至不知道如何调试它,因为“调试”区域中没有错误? 我有一个类级别的属性: 我使用以下代码来显示没有按钮的警报(它可以正常工作

  • 目前我用以下方法初始化firebase仿真器: 经过一段时间的努力,我想停止它。那么我如何才能停止仿真器呢?