我有一个接受对象并将其与另一个对象合并的函数。我希望能够有一个通用的T代表正在采用的对象,因为Typescript知道输出对象包含相同的键,但也有新的键。
export interface ObjFactory<T> {
someNewProp: string
otherNewProp: string
...T
}
export interface InputObject {
inputProp: string
}
然后输出对象将表示为
{
someNewProp: string
otherNewProp: string
inputProp: string
}
有没有办法实现与此类似的东西?
答案 0 :(得分:2)
如果您愿意导出type
而不是接口,则可以使用Type Intersection来实现此目的。
export type ObjFactory<T> = T & {
someNewProp: string
otherNewProp: string
}
export interface InputObject {
inputProp: string
}
type
AFAIK唯一的缺点是类和接口无法扩展它们。