相关疑难解决方法(0)

如何在AngularJs中检查互联网连接

这就是我在vanilla javascript中检查互联网连接的方法:

setInterval(function(){
    if(navigator.onLine){
        $("body").html("Connected.");
    }else{
        $("body").html("Not connected.");
    }
},1000);
Run Code Online (Sandbox Code Playgroud)

我的项目中有角度控制器和模块.我应该把代码放在哪里?它应该在全局上下文中执行,而不是分配给某个控制器.是否有某种全球控制器?

angularjs

51
推荐指数
2
解决办法
5万
查看次数

如何检测联机/脱机状态何时更改

我想知道什么时候互联网连接丢失并重新获得,以便我可以在一个警告"哎呀,没有互联网"和谷歌地图或包含从我的服务器派生的数据的网格之间切换.

这个相关问题其他相关问题认为他们有答案,但他们没有.

他们的解决方案适用于Chrome版本34.0.1847.137 m,MS IE v11.0.xx,但不适用于FireFox v29.0.1,因此我正在寻找适用于所有这三种浏览器的解决方案.


[更新] AS @Quad指出,有不同的方法来定义在线意味着什么.我将其定义为"我可以获取我需要向用户显示的数据吗?".


我有几个服务,负责从几个服务器获取数据(什么是最好的?单个,参数化,服务?每个服务器一个服务?或每个服务器每种类型数据一个服务?我在考虑后者,因为每个服务都可以然后映射到映射到视图的控制器.但我是Angular的新手,所以可能是错的).

另外,我编写了一个服务,负责在连接丢失时尝试重新连接.

任何尝试$http.get和获得404的人都可以调用
1)广播说没有互联网的服务(这样其他人就不会尝试连接)
2)定期尝试连接到我的服务器
3)成功时,停止连接尝试并广播该应用现在再次在线.

然而,这似乎非常笨拙,两个相关问题提供的解决方案似乎很优雅 - 除了FF :-(

我不能在这里重新发明轮子.其他人如何做到这一点?事实上,我很惊讶,还没有一个"正式的"Angular解决方案

angularjs

26
推荐指数
3
解决办法
3万
查看次数

标签 统计

angularjs ×2