【发布时间】:2019-09-19 12:39:03
【问题描述】:
我遇到了一个库,我需要从异步函数中返回一个未等待的承诺。但是,每当我尝试进行打字时 - Typescript 假定返回值已经被解析。
归结为:
async function getNumber(): Promise<number> {
return 5;
}
async function getUnawaitedPromise(): Promise<number> {
await fetch('...');
return getNumber();
}
这不会引发任何打字稿错误。但是对于异步函数getUnawaitedPromise(),我希望返回类型为Promise<Promise<number>>。
我认为这与此案类似:
function getNumber(): number {
return 5;
}
async function mustReturnPromise(): Promise<number> {
await fetch('...');
return getNumber();
}
我希望返回结果是Promise<ReturnTypeOfGetNumber>。
【问题讨论】:
标签: typescript