2016-04-27 53 views
0

在我的一个Ionic应用程序中,我需要检查设备上的网络连接是否可用。如果没有,我需要显示“网络连接不可用”的提示。所以我已经安装了Cordova的网络连接插件并使用了下面的代码。但我认为离线事件发射两次。由于警报消息显示两次,而应用程序处于离线模式。离线事件在Ionic移动应用程序上触发两次

.run(function($ionicPlatform, $ionicPopup) { 
    $ionicPlatform.ready(function() { 

     document.addEventListener("offline", displayofflineAlert, false); 

     function displayofflineAlert() { 
      $ionicPopup.alert({ 
       title: "No Internet", 
       content: "No Internet Connection available." 
      }) 
      .then(function(result) { 
       ionic.Platform.exitApp(); 
      }); 
     } 
    }); 
}) 

不知道它为什么会发射两次。我需要它射击一次。

回答

0

一个可能的原因是,在你项目的某个地方,你插入了两次插件的js文件(科尔多瓦应该自动为你做,但仍然可能由于配置错误)检查。

如果你只是想速战速决,just.add underscore.js到您的项目及用途:

document.addEventListener("offline", _.throttle(displayofflineAlert, 100), false); 
0

不要使用文件。用户角度$窗口服务。这对我有用

app.run('$window', [function($window){ 

    $window.addEventListener('online', onOnline, false); 

    function onOnline() { 
       // do something 
     } 
}])