Temel sınıfım ve türetilmiş bir tane var, her biri init işlevi.typescript parent sınıfı türetilmiş işlevi çağırıyor
onun temel kurucu diyoruz: i oluşturmak zaman
türetilen bir i isteyen1.1. kendi (türetilmiş) init işlevini çağırır.
Sorun, türetilen init işlevinin iki kez çağrılmasıdır.
Kodu:
class Base{
constructor() {
this.init();
}
init(){
console.log("Base init");
}
}
class Derived extends Base{
constructor() {
super();
this.init();
}
init(){
console.log("Derived init");
}
}
var obj = new Derived();
Çıktı:
constructor() {
super.init();
super();
}
:
Derived init
Derived init
init bu tüm hakkında ne yazılır ... size base.init gibi sth yapabilirsiniz türetilmiş() veya super.init(). Ben typescript anahtar kelimesini bilmiyorum - her zaman açıkça Base yöntemini çağırmak zorunda. Ancak teorik olarak interestang bu kötü bir tasarım IMHO olurdu olurdu –