TypeScript如何不抱怨既不是这个也不是那个的对象

时间:2019-01-06 18:45:02

标签: typescript

我本以为ObjectOne | ObjectTwo的意思是ObjectOneObjectTwo,而不是the combination of ObjectOne and ObjectTwo,这从下面看起来是这样的:

type A = { a: number }
type B = { b: number }
type AB = A | B
type ABs = AB[]
// valid as expected
const validList: ABs = [{ a: 1 }, { b: 2 }]
// valid, but should be invalid due to {a: 1, b: 2}
const shouldBeInvalidList: ABs = [{ a: 1 }, { b: 2 }, { a: 1, b: 2 }]

我在这里想念的是什么?如何通过打字稿获得this object or that object

这里的用例是拥有一个数组,该数组可以接受一个特定的对象,也可以接受另一个特定的对象,但是没有额外的属性,也没有组合。

0 个答案:

没有答案