Подтвердить что ты не робот

TypeScript: не удается найти имя async/wait

Я использую [email protected], и я хочу скомпилировать свой код в es5, но каждый раз, когда я использую ключевые слова async или await ошибки компилятора с этим сообщением:

Cannot find name 'await'.

Вот мои лики: dom, es2015, es2016, es2017.

Пример кода:

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

Такие вещи возможны даже при использовании [email protected], я пробовал это, но каким-то образом я не могу скомпилировать свой код.

4b9b3361

Ответ 1

Вам нужно использовать ваш asyncFn внутри функции, помеченной как функция async. Например:

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