#android #angular #typescript #ionic-framework #promise
Вопрос:
Для тестирования: я на самом деле использую свой телефон, использую ionic cordova, запускаю android-l и с chrome://проверьте, отлаживаю ли я приложение.
Когда я получаю доступ к странице datosparte, она печатается в консоли:
zone.js:1102
Unhandled Promise rejection:
{rows: {…}, rowsAffected: 1, insertId: 6736}
insertId: 6736rows: {length: 0, item: ƒ}
rowsAffected: 1[[Prototype]]: Object ;
Zone: <root> ; Task: null ;
Value: {rows: {…}, rowsAffected: 1, insertId: 6736}
undefined
Это код, который я использую для доступа к этой странице:
leerParte(parte){
this.datos.removeTpmParte();
this.datos.addTmpParte(parte.id);
this.navCtrl.navigateForward('datosparte');
}
removeTpmParte() делает:
removeTpmParte(){
this.database.executeSql("DELETE FROM tmpparte");
}
addTmpParte(идентификатор) делает:
addTmpParte(id) {
let data = [id];
return this.database.executeSql('INSERT OR REPLACE INTO tmpparte (id) VALUES (?)', data).then(data => {
});
}
И последнее, страница datosparte делает:
import { Component, OnInit } from '@angular/core';
import { alert } from '../services/alert';
import { api } from '../services/api';
import { datos } from '../services/datos';
@Component({
selector: 'app-datosparte',
templateUrl: './datosparte.page.html',
styleUrls: ['./datosparte.page.scss'],
providers: [datos, api, alert]
})
export class DatospartePage implements OnInit {
constructor(private datos:datos, private api: api, private alert: alert) { }
idParte:any
url:string
json:any
datosParte:any
fotosParte:any
histoParte:any
ngOnInit() {
this.url = "https://NotARealURL.com/?f=partes.getamp;id="
this.datos.getDatabaseState().subscribe(rdy => {
if (rdy) {
this.datos.getTmpPartes().subscribe(idParte => {
this.idParte = idParte[0];
this.getDatos(this.idParte);
})
}
});
}
async getDatos(idParte){
if(typeof idParte === "undefined")return
let getDatosParte = this.url idParte.id
console.log(getDatosParte)
this.api.getUrl(getDatosParte)
this.json = await this.api.getUrl(getDatosParte);
this.datosParte=[];
if(this.json.error['id'] != 0){
this.alert.showAlert("Error.", this.json.error['msg']);
return;
}
this.datosParte = this.json.parte.datos;
this.fotosParte = this.json.parte.fotos;
this.histoParte = this.json.parte.historico;
// console.log(this.datosParte);
// console.log(this.fotosParte);
// console.log(this.histoParte);
}
}