Olá Flávio, estou tentando trabalhar com o fetch mas ainda estou enrolado, ele retorna um promise mas preciso dos dados da promise, vou colocar o código para tentar te explicar. Este código é apenas um exemplo e não está acabado, é só teste:
var codigos, fatEnviado;
var url = `faturamento_fetch.asp?op=1&data1=${filtrodata1}&data2=${filtrodata2}`;
controler
.leFaturamento(url)
.then(res => {
console.log(res);
res.map( valor => {
fatEnviado = controler.leFatEnviado(valor.id_empresa);
//console.log(valor.id_empresa, fatEnviado);
});
});
O código acima está funcionando perfeitamente me retornando um array com as informações do banco, entretanto preciso unir a esse array uma informação que vem de outra base de dados, então chamo outra classe dentro do controler chamada leFatEnviado passando uma das informações que recebi na primeira leitura. O problema é que eu não quero um retorno promise, quero um valor mas acho que não estou conseguindo separá-lo da promise. Segue abaixo o controler:
class NegociacaoControler {
constructor() {
this._http = new HttpService();
}
leFaturamento(url) {
return this._http
.get(url)
.then(res => res)
.catch(erro => console.log(erro));
}
leFatEnviado(id_empresa) {
var objeto;
var retorno = [];
var url = `faturamento_fetch.asp?op=2&id_empresa=${id_empresa}`;
this._http
.get(url)
.then(res => {
if (res.length > 0) {
res.map( valor => {
objeto = {
data: valor.data,
data_visual: valor.data_visual
};
});
} else {
objeto = {
data: null,
data_visual: null
};
}
})
.catch(erro => console.log(erro));
return retorno.push(objeto);
}
}
Se puder me dar uma ajudinha, valeu...