@AlexSvenJS
front-end / js

Как вызвать requestAnimationFrame из экземпляра класса?

Как вызвать requestAnimationFrame из экземпляра класса?

Пример:
class Foo() {
	animation(){
		window.requestAnimationFrame(this.animation);
	}
}

new Foo().animation();
  • Вопрос задан
  • 390 просмотров
Решения вопроса 2
WispProxy
@WispProxy
JS, Front-End, DevOps Engineer — vbelozyorov.com
Если правильно вас понял, то вот моя сентябрьская демка:
codepen.io/WispProxy/pen/YGGKdd
Там есть пример вызова.

Если кратко, то требуется передать контекст.
Ответ написан
@lemme
Frontend
1) У вас ошибка синтаксиса в объявлении класса (скобки не нужны - это не функция).
2) Нужно биндить контекст, т.е использовать лямбда функцию, либо bind(this)
class Foo {
  animation(){
    window.requestAnimationFrame(this.animation.bind(this));
  }
}

new Foo().animation();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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