【问题标题】:Ionic popover not hiding second time离子弹出框没有第二次隐藏
【发布时间】:2017-06-01 16:22:36
【问题描述】:

我使用的是离子版本“1.1.0”和角度版本“1.4.3”

我遇到了 Ionic popover 的问题,我用 html 模板创建了 ionic popover,popover 是根据用户操作打开的,我在弹出窗口上有两个按钮,并且在按钮处理程序中我正在编写代码 =>$scope .popover.hide() 关闭弹窗,第一次工作正常,它关闭,第二次打开弹窗时它没有关闭

需要你的建议并想知道我是否遗漏了什么

关于隐藏方法的承诺,我正在进行状态转换,当我们第二次点击弹出按钮时,状态转换正在发生,但弹出窗口没有关闭

下面是我正在使用的代码sn-p

$ionicPopover.fromTemplateUrl('app/layout/eo-confirmation-popup.html', {
                    scope: $scope,
                    backdropClickToClose: false
                }).then(function (popover) {
                    $scope.dataLossPopover = popover;
                       $scope.dataLossPopover.show(angular.element(document.querySelector('.popupPosition')));
                });

点击下方代码调用按钮

$scope.dataLossPopover.hide().then(function () {
            $state.go(...);
        });

谢谢, 马利克

【问题讨论】:

    标签: angularjs ionic-framework


    【解决方案1】:

    试试这样的

    $ionicPopover.fromTemplateUrl('app/layout/eo-confirmation-popup.html', {
                        scope: $scope,
                        backdropClickToClose: false
                    }).then(function (popover) {
                        $scope.dataLossPopover = popover;
                    });
    
    
    $scope.openPopover = function(event) {
        $scope.dataLossPopover.show(event)
    }
    $scope.closePopover = function(event) {
        $scope.dataLossPopover.hide(event).then({
            $state.go();
        })
    }
    

    如果您在点击时打开弹出窗口

    <button ng-click="openPopover($event)"></button>
    <button ng-click="closePopover($event)"></button>
    

    【讨论】:

    • 嗨,我已经尝试了上述方法,但它不起作用,问题是当我单击关闭弹出按钮时,$scope.dataLossPopover.hide() 方法正在执行并且控制开始承诺的 hide 方法,但此时理想情况下,popover 应该被隐藏,但在我的情况下,它没有被隐藏,并且 hide 方法 promise 部分中的代码正在执行,这导致状态转换,并且弹出窗口保留在屏幕上。
    • 请检查,您在某处做错了,请按照我的代码所示尝试。从弹出框定义中写出 show 方法
    • 感谢它在将 show 方法移出弹出框定义后现在可以工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-10
    相关资源
    最近更新 更多