假设我具有以下不相交的联合类型:
type UnionType = {type: 'A', foo: string} | {type: 'B', bar: number}
我想提取子类型的类型定义:
type SubTypeA = {type: 'A', foo: string}
type SubTypeB = {type: 'B', bar: number}
但是我只想基于它们的type
值来提取它们,而不必重新定义整个子类型。我想为这些子类型使用类型definitons,以便可以使用带有子类型注释的函数,即:
handleSubTypeA = (item: SubTypeA) => {
<do stuff>
};