我使用typescript@next
并且我想将我的代码编译为es5
,但每次我使用async
或await
个关键字时该消息的编译器错误:
Cannot find name 'await'.
继承我的libs:dom
,es2015
,es2016
,es2017
。
代码示例:
let asyncFn = () => {
return new Promise((resolve:Function)=>{resolve(2)})
}
// should log `2`
console.log(await asyncFn())
即使使用typescript@2.0.x
这样的事情也是可能的,我已经尝试过,但无论如何我无法编译我的代码。
答案 0 :(得分:26)
您需要在标记为“异步”功能的函数中使用asyncFn。例如:
async someAsyncCode() {
let asyncFn = () => {
return new Promise((resolve: Function) => { resolve(2); });
}
// should log `2`
console.log(await asyncFn());
}