【发布时间】:2021-04-12 18:03:37
【问题描述】:
有两个不同对象的数组(数组a 和数组b),这些数组联合的成员值 - (a | b)[number] - 产生它们的交集,而我希望有一个联合:
type a = { one: string }[];
type b = { one: string, two: string }[];
type ab = (a | b)[number]; // actual type: { one: string }
// expected type: { one: string } | { one: string, two: string }
另请参阅link to TypeScript playground。
我想知道:
- 派生类型
{ one: string }是否正确? - 为什么不是
{ one: string } | { one: string, two: string }? - 有没有办法为任意对象数组实现
expected类型?
谢谢!
【问题讨论】:
标签: typescript