Morterset
@Morterset
Программист

Как передать объект в событие?

Есть класс. В нем идет обработка событий. Как сделать чтоб при срабатывании события можно было нормально работать с классом?
Вот такая штука не вариант
this.canvas_object.addEventListener("click", function() { this.click(this); }, false);


class Canvas{
	
	constructor(canvas_id) {
	        this.canvas_object = document.getElementById(canvas_id);
	        this.ctx = this.canvas_object.getContext('2d');
	        this.canvas_object.addEventListener("click", this.click, false); // Слушаем события	
	}
	
	click (){
	        console.log('нажал');
                this.ctx.fillStyle = "green";
	        this.ctx.fillRect(50, 50, 100, 100);
             // Вот здесь нужны данные объекта
// Понятно что this не работает, но нужно как то передать этот объект. Есть варианты?
	}

}
  • Вопрос задан
  • 381 просмотр
Решения вопроса 2
teknik2008
@teknik2008
Расскажите про GOLANG. Мне интересно
this.canvas_object.addEventListener("click", this.click.bind(this), false);
Ответ написан
Комментировать
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
this.canvas_object.addEventListener("click", () => this.click(), false);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы