流类型检查问题

Flow typechecking problems

我有 Flow js 错误,但无法理解是什么问题

尝试了不同的实用程序

class G{
    foo(){}}
class C{
    Bar(){}
}
const a: $ReadOnly<{+g: G, +c: C}> = {
    g: new G,
    c: new C,
}

type TT = $ObjMap<typeof a, <V>(_: V)=>V>;

function getProp<Generic: string>(propName: Generic): $ElementType<TT, Generic> {
    return a[propName]      
}

const c: G = getProp<'c'>('c');

是的,这是因为类型不匹配。只需设置正确的类型。

const c: C = getProp<'c'>('c');