Ionic FabricJs Проблема с доступом к функции - PullRequest
0 голосов
/ 15 ноября 2018
ionViewDidEnter(){
    this.loadCanvas();
}
loadCanvas(){
    canvas.on('mouse:down', function(e){
        this.canvasMouseDown(e);    
    });
}
canvasMouseDown(e){
    console.log(this.lock);
    console.log(this.pausePanning);
    if(!this.lock){
        this.pausePanning = true;
    }
}

Это код.Каждый раз, когда я нажимаю, я получаю ошибку.Как показано ниже

Ионная ошибка

Я перепробовал каждую комбинацию, и у меня все еще есть такая же проблема

1 Ответ

0 голосов
/ 15 ноября 2018

События фабрики связаны с объектом, который их запускает, что означает, что здесь:

canvas.on('mouse:down', function(e){
    this.canvasMouseDown(e);    
});

this является экземпляром canvas.И когда вы звоните this.canvasMouseDown(), вы, по сути, звоните canvas.canvasMouseDown(), так что отсюда и ошибка.Попробуйте использовать функцию стрелки в качестве обработчика события:

loadCanvas(){
    canvas.on('mouse:down', (e) => {
        this.canvasMouseDown(e);    
    });
}
...