【发布时间】:2017-10-28 03:12:40
【问题描述】:
我正在使用 TypeScript 中的 JSON API。除了一个额外的字段之外,JSON API 的一部分通常是相同的。我试图找到一个快捷方式,它不包括仅为该属性创建一个额外的命名接口。我经常需要做以下事情:
interface ICar extends IVehicle {
headlights: IHeadlights
}
interface IHeadlights extends ILights {
beam_strength: number
}
在 TypeScript 中你可以做这样的事情,但是你失去了扩展已经声明的接口的优势:
interface ICar extends IVehicle {
headlights: {
beam_strength: number,
color: string,
bulb: string
}
}
理想情况下,我想将两者结合起来,这样我就可以这样:
interface ICar extends IVehicle {
headlights: ILights {
beam_strength: number
}
}
或者是这样的:
interface ICar extends IVehicle {
headlights extends ILights {
beam_strength: number
}
}
有没有办法在 TypeScript 中做这样的事情?
【问题讨论】:
标签: typescript