【发布时间】:2018-12-12 11:12:45
【问题描述】:
我有以下TS功能:
CheckRegUser(u: User): boolean {
let b: boolean = true;
let toSend = {
email: u.email
};
this.http.post("http://localhost:8080/", toSend).subscribe((data: Valid) => {
if(!data.validity){
b = false;
}
});
console.log(b);
return b;
}
这里我连接到 ExpressJS 后端,我得到一个布尔结果。这部分工作正常,但问题是在“this.http”中改变b的值之前执行了“return b”语句,所以无论Express的响应是什么,b总是正确的。
我知道 TS 和 JS 是异步的,因此导致了这个问题,但是我找不到解决问题的正确方法。任何帮助,将不胜感激。
【问题讨论】:
标签: javascript typescript asynchronous