Typescript,auto等待所有Promise返回函数调用

时间:2017-03-12 14:04:30

标签: typescript async-await

我正在使用" async"功能,有时我忘记添加"等待"对于内部呼叫:

async function doThreeSteps () => {
    await firstPromiseReturningFunc();
    nonAsyncFunction();
    secondPromiseReturningFunc(); //Error here! Need to wait until this call resolves
    someOtherStepWhichReliesOnSuccessfullEndingOfPreviousFunction();
}

TypeScript应该可以警告这样的错误,因为TS知道每个函数返回什么类型,是承诺还是值。 我想让TS警告我这类案件。有可能吗?

1 个答案:

答案 0 :(得分:4)

TSLint(https://github.com/palantir/tslint)具有“不浮动承诺”规则。它要求某些使用从.then,.catch,await,赋值或返回等函数返回的Promise来完成。

还有一个TypeScript问题:https://github.com/Microsoft/TypeScript/issues/13376