单击设备回到单击时,就会多次创建离子弹出窗口



我已经写了一个函数,以打开"单击设备"后的离子弹出窗口,问题是在我多次单击设备后立即创建了多次弹出窗口并保留在DOM中。我如何关闭以前的弹出窗口并再次创建新弹出窗口?

应用出口出口弹出:

 $rootScope.exitApp = function () {

                exitpopup = $ionicPopup.show({
                    templateUrl: 'templates/exitApp1.html'
                });
                exitpopup.then(function (res) {
                    console.log(res);
                });
                return false;
            };

寄存器函数:

 $ionicPlatform.registerBackButtonAction(function (e) {
  // lots of  code 
 if ($ionicHistory.backView())
 $rootScope.exitApp ();
});

我想念什么吗?

希望以下功能对您有帮助。按下按钮按&检查标志是否为错误,无需再次显示对话框。如果用户按取消再次更改标志值。

app.run(function($ionicPlatform,$rootScope,$ionicPopup) 
{
    $rootScope.is_dialog_in_screen = false;
    $ionicPlatform.ready(function() 
    {
        if(window.cordova && window.cordova.plugins.Keyboard) 
        {
            cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
            cordova.plugins.Keyboard.disableScroll(true);
        }
        if(window.StatusBar) 
        {
            StatusBar.styleDefault();
        }
    });
    $ionicPlatform.registerBackButtonAction(function (event) 
    { 
        event.preventDefault();
        if($rootScope.is_dialog_in_screen==false)
        {
            var confirmPopup = $ionicPopup.confirm({
                title: 'Quit.?',
                template: 'Really want to exit?',
                cancelText: 'cancel',
                okText: 'ok'
            })
            .then(function(res) 
            {
                if (res) 
                {
                    alert("Exit app logic goes here");
                }
                else
                {
                    $rootScope.is_dialog_in_screen = false;
                }
            });
            $rootScope.is_dialog_in_screen = true;
        }
    }, 999);
})

相关内容

  • 没有找到相关文章