Estou tentando desenvolver uma api para calcular o salário clt, porém ao instanciar a classe AjaxHelper (responsavel pelas conexões) não consigo receber o json parseado segue o código.
class AjaxHelper {
public data : object;
private xhr : XMLHttpRequest;
constructor( private reqtype : string, private uri : string, private async : boolean) {
const domain = 'https://private-4e803-salarycalculatorapi.apiary-mock.com';
this.xhr = new XMLHttpRequest();
this.xhr.onloadend = () => this.requestData();
this.xhr.onerror = () => this.connectionError();
this.xhr.open(this.reqtype, domain + this.uri, this.async, null, null);
this.xhr.send(null);
}
requestData() {
if(this.xhr.readyState == 4 && this.xhr.status == 200) {
this.data = JSON.parse(this.xhr.responseText);
}
}
connectionError() {
throw new Error('A Conexão Falhou.');
}
get mydata() {
return this.data;
}
}
E agora segue a class subsequente criada
class Inss {
public request : AjaxHelper;
public data : object;
constructor(private salarioBruto : number) {
this.request = new AjaxHelper('GET', '/inss', true); //retorna o objeto
this.data = this.request.mydata;//não retorna o objeto
}
get inss(){
return this.data;
}
}
let my = new AjaxHelper('GET', '/inss', true); // No console retorna undefined
my.mydata; // retorna o objeto