使用在一个函数的事件处理程序中声明的变量在另一个函数中

时间:2019-05-13 16:24:24

标签: javascript jquery ecmascript-6

我有以下课程

export default class{
  constructor({
  )} {
    this.myFoo();
    this.myBar();
  }

  myFoo() {
    if (myBool){
      ... 
    }
  }

  myBar() {
    this.myElement.on('my-trigger', (e, myBool) => {
      if(myBool){
        ... 
      }
    }
  }

我想使用通过myBool jQuery myBar处理程序引入的.on() 使用其他功能myFoo

1 个答案:

答案 0 :(得分:1)

在这种情况下,您需要在类的范围内分配此值,例如:

export default class{
  constructor({
  )} {
    this.myFoo();
    this.myBar();
  }

  myFoo() {
    if (this.myBool){ 
      //now myBool is accessible via this.myBool
      ... 
    }
  }

  myBar() {
    var that=this;
    this.myElement.on('my-trigger', (e, myBool) => {

      if(myBool){
        that.myBool=myBool;
        ... 
      }
    }
  }
相关问题