H5W3
当前位置:H5W3 > 问答 > 正文

关于ts中接口的value如何继承

比如一个接口
{
A:{a:string,b:string},
B:{a:string,c:string},
C:{a:string,d:string},
},这个接口的value都有共同的一些字段,我想设置一个公共的接口,然后找个value直接继承,然后拓展,怎么写,或者怎样优化这种嵌套的,

用交叉类型就好了。

interface IValue {
a: string;
}
interface MyInterface {
A: IValue & { b: string; };
B: IValue & { c: string; };
C: IValue & { d: string; };
}

非要用继承也不是不行,挨个儿定义呗。

官方推荐的写法是用继承的方式:

interface IValueA {
a: string
}
interface IValueAB extends IValueA {
b: string
}
....
interface IValueABC {
A: IValueAB;
B: IValueAC;
C: IValueAD;
}

虽然这样代码有点多, 但是更清晰且好维护扩展

回答

本文地址:H5W3 » 关于ts中接口的value如何继承

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址