2017-04-20 102 views
0

我试图让ionic2网络状态离子2网络状态,离子本地文档例如不工作:我的代码是:与离子本地3.X不工作

import { Component } from '@angular/core'; 
    import { NavController } from 'ionic-angular'; 
    import { Network } from '@ionic-native/network'; 
    @Component({ 
     selector: 'page-network', 
     templateUrl: 'network.html' 
    }) 
    export class NetworkPage { 

     Status: any = ''; 
     ConnectionType:any = ''; 

constructor(private network: Network) { 
    let disconnectSubscription = this.network.onDisconnect().subscribe(() => { 
    this.Status = 'Disconnected'; 
     console.log('network was disconnected '); 
    }); 
    disconnectSubscription.unsubscribe(); 
    let connectSubscription = this.network.onConnect().subscribe(() => { 
     console.log('network connected!');
   
    this.Status = 'Connected'; 
     setTimeout(() => { 
     if (this.network.type === 'wifi') { 
      console.log('we got a wifi connection, woohoo!'); 
     } 
     }, 3000); 
    }); 
    connectSubscription.unsubscribe(); 
    } 
} 

我一直在使用ionic2。错误没有来,但它仍然不适合我。需要检查网络状态是启用还是禁用。

+0

它不会给出任何错误或警告?没有关于科尔多瓦? –

回答

3

确保您@ionic-native/core安装,并在app.module.ts添加Network到提供商@NgModule装饰,最后你必须注入或在某处app.component.ts

通常所说的创建服务Upadate

删除收听者的取消订阅方法

disconnectSubscription.unsubscribe(); 
connectSubscription.unsubscribe(); 

我fou第二出你先subscribe到网络事件,然后unsubscribe

步骤,使其工作

  1. 创建ionic2项目

  2. 运行命令

    ionic plugin add cordova-plugin-network-information

    npm install --save @ionic-native/network

  3. providers阵列在app.module.ts enter image description here

  4. 添加Network服务在app.component.ts使用此代码。

    enter image description here

  5. 添加所需的平台让选择Android

    ionic platform add android

  6. 然后运行该代码

    ionic run android

  7. 最后尝试启用/禁用无线网络一nd手表控制台

+0

如何在app.component.ts中创建服务 – Ayyan

+0

您不能在'app.component.ts'中创建服务,只需在app.component构造函数中注入服务 –

+0

从'@ ionic-native/network'注入import {Network};仍然没有回应服务 – Ayyan