1
BがAを拡張する場合、Aは新しいB?を作成するメソッドを定義します。ここでtypescriptのベースクラスに同じ型のインスタンスを作成する方法
class SetA {
constructor(public items:any[]) {
}
createNew(items){
return new *typeof this*(items); //<-- insert actually working magic here
}
clone(){
return this.createNew(this.items);
}
}
class SetB extends SetA { }
var x = new SetB([1,2,3]);
x.clone(); //<-- returns a new SetB
パーフェクトは、あなたに感謝します – Flion