TS接口动态属性

290 阅读1分钟

在实际而开发中遇到这么一个问题,需要接口a存在一个泛型T,接口a的b属性根据泛型来判断使用的接口。想问一下大家有没有其他更好的写法。

const type StringType='type1'|'type2'
interface c{
}
interface d{
}
interface e{
}
interface a<T extends StringType>{
    f:T,
    b:T extends 'type1'?c:T extends 'type2'?d:e
}