我是新来的打字稿,我的代码有很多重复的引用(data1,data2,data3 ...)。OOP/Typescript - 当类构造函数将接口对象作为参数时是否可以优化代码?
export interface ProjectInterface{
data1: string;
data2: string;
data3: number;
}
export class Project {
data1: string;
data2: string;
data3: number;
constructor(obj: ProjectInterface) {
this.data1 = obj.data1;
this.data2 = obj.data2;
this.data3 = obj.data3;
}
}
我知道我可以在构造函数中传递data1,data2 ......但是当你有很多参数时它并不方便。
是否有一个干净的解决方法,以保持接口有引用的单一入口点?
所以你想在构造函数中自动化属性初始化?我不一定把这称为_optimization_,更像是一种语义优化。 –
是的我想避免在Project类中重复变量声明并自动初始化 – sebap
为什么不在'Project'类中声明'ProjectInterface'类型的属性'data',并且只需要'this.data = obj'?使用'Object.assign'还可以在注入的数据和Class实例持有的数据之间引入一些灵活性。 –