如何在事件函数中获取类

时间:2014-04-28 12:54:32

标签: javascript javascript-events

我创建了一个web worker,如下所示:

export class WorkerApi {

    private worker:Worker;

    constructor() {
        this.worker = new Worker("web-worker.js");
        this.worker.onmessage = this.messageHandler;
    }

    private messageHandler (e) {

        // need "this" for the instantiated WorkerApi object here

        // ...
    }

我遇到的问题是当调用messageHandler时,“this”是Worker对象。我需要访问WorkerApi对象。我怎么做到的? (我正在使用打字稿,但我相信这是一个javascript问题。)

1 个答案:

答案 0 :(得分:1)

只是做:

this.worker.onmessage = this.messageHandler.bind(this);

处理程序中的this值将指向您的WorkerApi实例。