怎么实现以下功能的 typescript 类型?

实现一个类型 Path,功能是可以提取对象的 key 路径,例如

Path<{foo: {bar: string}, baz: number}> = 'foo' | 'foo.bar' | 'baz'
阅读 1.1k
1 个回答
✓ 已被采纳
type Path<T, K extends keyof T = keyof T> =
    K extends string
    ? K | (T[K] extends object
        ? `${K}.${Path<T[K]>}`
        : never)
    : never
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Microsoft
子站问答
访问
宣传栏