从构造函数调用类函数

时间:2015-06-16 14:14:15

标签: javascript class ecmascript-6

我有一个带有事件监听器的类,我希望在某些点上添加和删除它。创建实例时应激活侦听器。由于我不想两次编写相同的代码,我想我会这样:

export class A {
  constructor() {
    //stuff happens
    addEventListeners()
  }

  addEventListeners() {
    // Add eventlistener here
  }

  RemoveEventListeners() {
    // remove eventlistener here
  }
}

所以后来我希望能够做到这一点:

var foo = new A();
//.....
foo.RemoveEventListeners();

但这不起作用,我得到一个ReferenceError,说明addEventListeners未定义。

有可能以某种方式解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

this.addEventListeners()是您的解决方案。

请记住,我们现在正在处理类,但在大多数语言中(并且仍然从ES5延续到ES6),要在其中引用对象的方法,您需要使用{ {1}}关键字。

this