假设我有类型
type A = {
a: string,
b: string,
};
有没有办法创建等效的界面,例如
interface B {
a: string,
b: string,
}
无需重写上面的所有内容。
有什么办法可以对类进行相同的操作,但是需要一些默认的赋值,例如
class C {
a: '',
b: '',
}
因此我们可以使用new C()
,而不必重写A
如果不可能,这是根据class C
中已经定义的内容来写type A
的最佳方法
答案 0 :(得分:2)
您可以使用extends
:
type A = {
a: string,
b: string,
};
interface B extends A { // <-- { a: string; b: string; c: string; }
c: string;
}
对于第二个问题,您可以使用某种工具,但它只会复制输入内容,因此您必须提供一个值:
class C implements A {
a: '';
b: '';
}