代码之家  ›  专栏  ›  技术社区  ›  Adam

流类型泛型类型

  •  1
  • Adam  · 技术社区  · 6 年前

    我试图创建一个可配置的类型,如下所示:

    import * as React from 'react';
    
    type Identity<T: {}> = {
        data: {
            refetch: void => void,
            T: {}
        }
    };
    
    ({ data }: Identity<{foo: string }>) => <div>{data.foo}</div>;
    

    但我得到:

    Cannot get data.foo because property foo is missing in object type [1].

    我是不是漏掉了一些显而易见的东西?这是graphql hoc返回数据的形状。

    谢谢你

    Try Flow

    1 回复  |  直到 6 年前
        1
  •  2
  •   Evert    6 年前

    你是说:

    type RefetchObj = {
        refetch: void => void,
    }
    type Identity<T: {}> = {
        data: T & RefetchObj
    };