当它在IONIC中检测到没有互联网时放置一个弹出窗口

put a popup when it detects no internet in IONIC

本文关键字:一个 窗口 IONIC 检测 互联网      更新时间:2023-09-26

我是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时,弹出窗口显示

首先安装此插件 科尔多瓦插件 添加科尔多瓦插件网络信息插件

使用此代码

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