class Game
foo: null
play: ->
@foo = 2
@animate()
animate: ->
requestAnimationFrame(@animate, 1000)
console.log('foo = ', @foo)
$ ->
game = null
init = ->
game = new Game()
game.play()
init()
El registro en el método animado en el Juego produce:variable de instancia se convierte en indefinido - CoffeeScript
foo = 2
foo = indefinido
Así foo es 2 en la primera llamada para animar y luego indefinido a partir de entonces. ¿Podría alguien explicar por qué y cómo puedo solucionar esto? Cualquier ayuda es muy apreciada.
'requestAnimationFrame' no toma un número como segundo argumento; en cambio, llama a la función dada lo antes posible (normalmente más rápido que 'setTimeout (func, 0)') siempre que la pestaña del navegador esté en primer plano. Consulte https://developer.mozilla.org/en/DOM/window.requestAnimationFrame –