是否有使用flowjs获取fetch的示例?

时间:2016-10-26 13:40:19

标签: javascript types fetch flowtype

我试图在我的异步函数中使用fetch,但是流程正在抛出此错误

错误:(51,26)流程:承诺。此类型与标识Promise |的union:type应用程序不兼容await的类型参数T

这是一个可以生成此错误的代码:

async myfunc() {
   const response = await fetch('example.com');
   return await response.json();
}

我想输入response.json

的回复

1 个答案:

答案 0 :(得分:5)

您可以使用Promise <T>注释函数的返回类型,其中T是所需类型,或者将结果分配给具有显式类型注释的临时本地,然后返回该本地。然后将推断出函数返回类型。

显式返回类型注释:

async myfunc(): Promise<{name: string}> {
    const response = await fetch('example.com');
    return await response.json();
}

来自明确注释的本地的推断返回类型:

async myfunc() {
    const response = await fetch('example.com');
    const result: {name: string} = await response.json();
    return result;
}