我想使用cordova-plugin-advanced-http发出HTTP get请求,但是它返回一个错误,指出cordova不可用。我的问题是它在2天前工作,从昨天开始,它不再起作用了。 以下是错误消息:
[20:35:26] console.warn: Native: tried calling HTTP.get, but Cordova is not available. Make sure to include cordova.js
or run in a device/simulator
[20:35:26] console.log: cordova_not_available
代码:
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { HTTP } from '@ionic-native/http';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(public navCtrl: NavController,private http: HTTP) {
}
getHttp(){
this.http.get('http://ionic.io', {}, {})
.then(data => {
console.log(data.status);
console.log(data.data); // data received by server
console.log(data.headers);
})
.catch(error => {
console.log(error);
});
}
}
我厌倦了卸载所有插件和平台并重新安装它,卸载离子和cordova,但没有成功。我在谷歌上找到的所有解决方案都没有用。
[编辑] 仅当我使用-c或-l标志
运行它时才会发生这种情况答案 0 :(得分:0)
您可能需要使用以下命令启动脚本:
$$(document).on('deviceready', function() {
-- insert code here
})
在设备准备好之前,Cordova无法使用。这意味着在设备完全加载之前,插件将不可用。
原始javascript:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
// Now safe to use device APIs
}