export class Http {
send(url,data){
return new Promise((resolve,reject)=>{
let xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if( (xhr.status >= 200 && xhr.status < 400)){
let response = xhr.responseText;
resolve(response)
}else{
resolve('error')
}
}
};
xhr.timeout = 0;
xhr.open("GET", url, true);
xhr.send();
})
}
async test(){
let result = await this.send('','');
}
}
怕内存泄露,不知道这样写会不会有问题
可以用axios库,没必要自己写
泄露不大知道,await可能会无限等待,不是所有if分支处理了Resolve/Reject。
另外,在托管语言,所谓泄露应该是内存死锁没法回收,导致无法GC,看这段代码不大可能产生这种问题。