我们从未使用过await / async,所以问题也可能是一个愚蠢的问题,但我们错了什么?
这是我们的代码:
constructor() {
let text = this.textAsync();
console.log('text: ', text);
}
async textAsync() {
let val = await this._text();
return val;
}
_text(): Promise<any> {
return new Promise((resolve, reject) => {
resolve('TEEEEXXTTTTT');
})
}
日志永远不会是text: TEEEEXXTTTTT
,而是类似
text: ZoneAwarePromise {__zone_symbol__state: null, __zone_symbol__value: Array[0]}
我确信有一个简单的解决方案:微笑:
THX
答案 0 :(得分:0)
this.textAsync();
会返回一个承诺,所以你必须等到它被解决:
constructor() {
this.textAsync()
.then((text)=> { console.log('text: ', text) });
}