我目前有运行良好的这段代码:
export interface IReq {
timestamp: number;
};
export interface ITrack extends IReq {
id: number;
};
const track: Pick<ITrack, 'id'> = {
id: 1
}
如果ITrack界面的id字段被重命名,我们会从tsc收到编译器错误,这很好,但是我也想修改'id'本身
打字稿有什么办法可以检测到这种变化?
答案 0 :(得分:0)
我想做的重点是将ITrack与IReq分离,这可以通过简单的交集类型完成:
type TTrackReq = IReq & ITrack
这样做,我们不再需要从IReq扩展而仅使用ITrack的属性,非常有趣