返回期待值会返回一个Promise吗? (es7 async / await) [英] Returning an awaited value returns a Promise? (es7 async/await)
本文介绍了返回期待值会返回一个Promise吗? (es7 async / await)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
const ret = () => new Promise(resolve => setTimeout( () => resolve('somestring'), 1000));
async function wrapper() {
let someString = await ret();
return someString;
}
console.log( wrapper() );
它记录承诺{< pending> }
;
为什么它返回Promise而不是'somestring'
?
我正在使用Babel ES7预设为编译。
I'm using the Babel ES7 preset to compile this.
推荐答案
异步函数返回promises。为了做你想做的事,试试这样的事情
Async functions return promises. In order to do what you want, try something like this
wrapper().then(someString => console.log(someString));
您还可以等待 wrapper()
与其他异步函数的上下文中的其他promise一样。
You can also await on wrapper()
like other promises from the context of another async function.
console.log(await wrapper());
这篇关于返回期待值会返回一个Promise吗? (es7 async / await)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文