当它在IONIC中检测不到互联网时弹出一个弹出窗口

时间:2016-02-16 15:06:46

标签: javascript ionic-framework

我是IONIC的新手,我试图在没有互联网服务的情况下显示弹出窗口。但我有问题,因为我需要注入$ ionicPopup,而且不知道如何。

这是我的代码:

.config(function ($httpProvider,$ionicPopup) {

$httpProvider.interceptors.push(function ($rootScope, $q,$ionicPopup) {
        return {
            request: function (config) {
                config.timeout = 5000;
                return config;
            },
            responseError: function (rejection) {
                switch (rejection.status){
                    case 408 :
                        alert("time out");
                        break;
                    case 0 :
                    $injector.$ionicPopup.alert({
                      title: 'Error!',
                      subTitle: 'not internet'
                     })

                       alert("no internet");
                    break;


                }
                return $q.reject(rejection);
            }
        }
    })

这是我的错误:

 Uncaught Error: [$injector:cdep] Circular dependency found: $http <- $templateRequest <- $compile <- $ionicTemplateLoader <- $ionicPopup <- $http <- $templateFactory <- $view <- $state

我正在执行此配置,以便每次检测到无法发出请求$ http时,弹出显示

1 个答案:

答案 0 :(得分:0)

首先安装此插件cordova插件添加cordova-plugin-network-information插件

使用此代码

module.run(function($rootScope, $cordovaNetwork) {
    // listen for Offline event
    $rootScope.$on('$cordovaNetwork:offline', function(event, networkState, $ionicPopup) {
        $ionicPopup.alert({
            title: 'Error!',
            subTitle: 'not internet'
        })
    })
})