在TypeScript中获取对象联合的键

6
有没有一种方法可以获取对象类型联合类型 { a: ...} | { b: ...} 的所有键?值得一提的是,这种类型是动态生成的。我花了几个小时但是没有成功...
1个回答

8

条件类型遵循“分配律”。

类似于这样的东西(或者至少是个开始)

type Keys<T> = T extends {[key: string]: any} ? keyof T : never

type Test = Keys<{a: string} | {b: number} | {c: object}>

//type Test = "a" | "b" | "c"

Playground


太棒了!谢谢你! - walkthroughthecode

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接