我通过处理工人遇到问题,当我发出请求时XMLHttpRequest()
发送返回null
,但onload
方法返回我在调用send时预期的文件。我究竟做错了什么?
这是代码:
function pegarDados(){
let requisicao = new XMLHttpRequest();
requisicao.overrideMimeType('text/plain');
requisicao.setRequestHeader('X-Requested-With', 'JSONHttpRequest');
requisicao.open('GET','./assets/data/dados.json', false);
requisicao.onload = function(){
return JSON.parse(this.response);
};
let resultado = requisicao.send();
return resultado.responseText;
}
self.onmessage = function (event) {
if(event.data == 'lista'){
let dados = pegarDados();
console.error(dados);
self.postMessage(dados);
}
}
答案 0 :(得分:0)
XMLHttpRequest.send()
actually has a return value of undefined
在您的代码中,您尝试通过执行以下操作为设置分配请求的值:
let resultado = requisicao.send();
显然会将undefined
分配给变量。
你在xhr.onload
做了什么,我也会这样做,我真的不明白为什么你想要两种回归方法。
看着你使你的xhr不是异步的,你可以这样做:
requisciao.send();
return requisciao.responseText;