如何在闭包中访问它?

时间:2019-06-17 13:03:41

标签: javascript typescript ionic-framework konvajs

我有一个将类变量设置为Konva.Stage的函数,并且我想在同一函数中向该变量添加事件侦听器。但不幸的是,我无法在此事件侦听器中访问其他类函数和变量。基本上,我无法访问“ this”。我该如何解决这个问题?

在这里您可以看到我的示例

  setStage = () => {
    this.stage = new Konva.Stage({
      container: 'imageCanvas',
      width: this.plt.width(),
      height: this.plt.height(),
      listening: true
    });


    this.stage.on('tap', function(evt) {

        console.log("TAP TRIGGERED");
        // set active shape
        var shape = evt.target;
        this.activeShape = this.activeShape && this.activeShape.getName() === shape.getName() ? null : shape;
        // <------ CANNOT ACCESS this.activeShape

        this.baseLayer.draw(); //<------ CANNOT ACCESS this.baseLayer
    };

  }

0 个答案:

没有答案