TypeScript:找不到名称async / await

时间:2016-11-03 11:53:02

标签: typescript async-await

我使用typescript@next并且我想将我的代码编译为es5,但每次我使用asyncawait个关键字时该消息的编译器错误:

Cannot find name 'await'.

继承我的libs:domes2015es2016es2017

代码示例:

let asyncFn = () => {
   return new Promise((resolve:Function)=>{resolve(2)})
}
// should log `2`
console.log(await asyncFn())

即使使用typescript@2.0.x这样的事情也是可能的,我已经尝试过,但无论如何我无法编译我的代码。

1 个答案:

答案 0 :(得分:26)

您需要在标记为“异步”功能的函数中使用asyncFn。例如:

async someAsyncCode() {
    let asyncFn = () => {
        return new Promise((resolve: Function) => { resolve(2); });
    }
    // should log `2`
    console.log(await asyncFn());
}