如何拥有Class.SubClass.SomeMethod结构?

时间:2018-04-10 03:51:52

标签: javascript class ecmascript-6

这是我的主类(它使用子类:)

import SubClass from './SubClass'

class MainClass extends classes(SubClass) {
  constructor () {
    // some code
  }
}

window.MainClass = new MainClass()
export default MainClass

这是子类:

class SubClass {
  constructor () {
    this.someMethod = function () {
      // some code
    } 
  }
}

export default SubClass

如果我想使用SubClass中的方法,我可以写:MainClass.someMethod

如何修改此代码,所以我写了:MainClass.SubClass.someMethod而不是?

所以我可以写:

MainClass.SubClass.someMethod MainClass.SubClass2.someMethod

如果我需要另一个SubClass?

1 个答案:

答案 0 :(得分:1)

我认为您需要致电super()。并且classes()似乎不需要添加。

在构造函数中使用时,super关键字单独出现,必须在使用this关键字之前使用。 见document

import SubClass from './SubClass'

class MainClass extends SubClass {
  constructor () {
    super();
    console.log(this.someMethod)
  }
}

希望这个帮助