歧视工会是打字稿中最方便的事情之一。但是,一旦定义它们就很难操作。我要弄清楚的是如何在联合中省略整个类型。请看以下示例:
export type A = {
type: 'a',
a: 'a'
}
export type B = {
type: 'b',
b: 'b'
}
export type C = A | B;
这一切都很好,但是使用模块是否有任何方法可以将C类型限制为A?
我想在使用模块中完成以下操作:
import { A, C, B } from 'type-defs.d'
type NewTypeA = SPECIAL_OMIT<C, B>
// A should be equivalent to NewTypeA
但是我不知道有什么方法可以做到这一点。请注意,我并没有要求从已区别类型中省略 properties 的方法。我想从工会中省略整个类型。