网络插件 ngCodova 不适用于控制器
Network plugin ngCodova don't work into controller
我正在使用插件通过应用程序获取我的移动设备的状态和连接类型。但是插件只在$ionicPlatform.ready
内有效,至少我是这样的,当我运行进入控制器时,连接类型的结果是unknow
。
插件link:Network Plugin
安装程序 link:CLI installer
代码
angular.module('starter', ['ionic', 'ngCordova'])
.run(startApp)
.controller('networkCtrl', networkCtrl);
startApp.$inject = ['$ionicPlatform', '$cordovaNetwork'];
function startApp($ionicPlatform, $cordovaNetwork) {
$ionicPlatform.ready(function() {
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
var netInfo;
netInfo = $cordovaNetwork.getNetwork();
console.log(netInfo); //wifi, 4G, 3G, etc.
});
}
networkCtrl.$inject = ['$scope', '$cordovaNetwork'];
function networkCtrl($scope, $cordovaNetwork) {
var netInfo;
netInfo = $cordovaNetwork.getNetwork();
console.log(netInfo); //unknow
}
在里面添加这个document.addEventListener("deviceready", function () {
function networkCtrl($scope, $cordovaNetwork) {
$scope.networkType = null;
$scope.connectionType = null;
document.addEventListener("deviceready", function () {
$scope.networkType = $cordovaNetwork.getNetwork();
if ($cordovaNetwork.isOnline()) {
$scope.connectionType = 'Online';
}
else if ($cordovaNetwork.isOffline()) {
$scope.connectionType = 'Offline';
}
else {
$scope.errorMsg = 'Error getting isOffline / isOnline methods';
}
}, false);
});
我正在使用插件通过应用程序获取我的移动设备的状态和连接类型。但是插件只在$ionicPlatform.ready
内有效,至少我是这样的,当我运行进入控制器时,连接类型的结果是unknow
。
插件link:Network Plugin 安装程序 link:CLI installer
代码
angular.module('starter', ['ionic', 'ngCordova'])
.run(startApp)
.controller('networkCtrl', networkCtrl);
startApp.$inject = ['$ionicPlatform', '$cordovaNetwork'];
function startApp($ionicPlatform, $cordovaNetwork) {
$ionicPlatform.ready(function() {
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
var netInfo;
netInfo = $cordovaNetwork.getNetwork();
console.log(netInfo); //wifi, 4G, 3G, etc.
});
}
networkCtrl.$inject = ['$scope', '$cordovaNetwork'];
function networkCtrl($scope, $cordovaNetwork) {
var netInfo;
netInfo = $cordovaNetwork.getNetwork();
console.log(netInfo); //unknow
}
在里面添加这个document.addEventListener("deviceready", function () {
function networkCtrl($scope, $cordovaNetwork) {
$scope.networkType = null;
$scope.connectionType = null;
document.addEventListener("deviceready", function () {
$scope.networkType = $cordovaNetwork.getNetwork();
if ($cordovaNetwork.isOnline()) {
$scope.connectionType = 'Online';
}
else if ($cordovaNetwork.isOffline()) {
$scope.connectionType = 'Offline';
}
else {
$scope.errorMsg = 'Error getting isOffline / isOnline methods';
}
}, false);
});