我挣扎,这将是一个很好的做法或更好的方法“在ES6兄弟班”报之以沟通,因为他们没有真正的父类,顾名思义。
让我更好地解释:
class Car {
constructor(typeOfMotor){
this.motor = typeOfMotor;
this.mount();
this.addListener();
}
mount() {
// Some async logic here, and this will return true or false;
}
addListener(driver) {
// Here i want to listen this.mount method and,
// when return true, then call the ride method in the driver
// If true:
driver.ride();
}
}
class Driver {
constructor(driverName) {
this.name = driverName;
}
ride(){
console.log('Highway to hell!');
}
}
class Race {
constructor() {
this.init();
}
init() {
this.car = new Car('v8');
this.driver = new Driver('michael');
}
}
var race = new Race;
race.car.addListener(race.driver);
所以基本上,我有一些环境中我不需要扩展类,因为我想保持他们作为封装成为可能。
我有这个顶部类(不父,因为其他人都没有继承什么,虽然)。
而这个问题很简单,这将是创建元素之间的这种沟通的最佳方式。