我如何在打字稿中使交集类型可选
interface TypeA {
a: string
b: string
}
interface TypeB {
c: string
}
现在我想做一个 TypeC,a 和 b 是可选的,c 是必需的。
interface TypeC {
a?: string
b?: string
c: string
}
有什么捷径可以做到吗?例如:
// type TypeC = TypeA? & TypeB
我认为当 TypeA 很大时它很有用
回答
操场
interface TypeA {
a: string
b: string
}
interface TypeB {
c: string
}
// First way using extends and Partial
interface TypeC extends Partial<TypeA>, TypeB {
// ...
}
// Second way using & and Partial
type TypeD = Partial<TypeA> & TypeB;
const variableC: TypeC = {
c: '',
};
const variableD: TypeD = {
c: '',
};