我有一个类Kid,该类用于使用Managerthis.kid = new Kid()中创建新对象。然后从我要从ManagerdoSomething())调用函数的孩子那里,这可能吗?我尝试使用super(),但由于是非派生构造函数,因此无法正常工作。我怎样才能做到这一点?

经理:

'use strict';

import Kid from './Kid';

export default class Manager {
  constructor() {
    this.init();
  }


  init() {
    this.kid = new Kid();
  }

  doSomething(someInput) {
    // Do stuff
  }
}


小孩班:

'use strict';

export default class Kid {
  constructor() {
    // call parent doSomething()
  }
}

最佳答案

将您的父母传递给Kid的构造函数。保存并调用它。

“使用严格”;

从'./Kid'导入Kid;

export default class Manager {
  constructor() {
    this.init();
  }


  init() {
    this.kid = new Kid(this);
  }

  doSomething(someInput) {
    // Do stuff
  }
}


export default class Kid {
  constructor(parent) {
    parent.doSomething()
  }
}

10-07 12:49