2 回答
TA贡献1752条经验 获得超4个赞
JavaScript 是一种同步、阻塞、单线程的语言。这只是意味着一次只能进行一项操作。
尝试使用回调函数
class fetchDemo{
constructor(dummy){
this.dummy=dummy;
this.alienMsg(function(data) {
console.log(data);
});
}
alienMsg(callback){
fetch('./file.txt')
.then(response => callback(response.text()))
.then(body =>{
callback(body);
})
.then((txt)=>{
callback(txt);
});
}
}
new fetchDemo(null);
TA贡献1784条经验 获得超9个赞
经过不断尝试,我暂时使用 JavaScript 承诺解决了这个问题
但是我不会将我的答案标记为正确
注意:我不得不放弃使用 JavaScript 类
var alienMsg = new Promise(
(res,rej)=>{
fetch('./file.txt')
.then(response => response.text())
.then(body =>{
//console.log(body);
return body;
})
.then((txt)=>{
//returning inside then using JavaScript promises resolve
res(txt)
});
}
);
(()=>{
alienMsg
.then(data=> console.log(data));
})();
添加回答
举报