我目前正在开发一个javascript画布2D游戏引擎,我遇到了一些关于requestAnimFrame
的问题。
在我看来,我正确地做到了,但一段时间后我得到以下错误(Uncaught RangeError: Maximum call stack size exceeded)
您可以在此处查看来源:http://snipt.org/vxij1
答案 0 :(得分:1)
我的猜测是这一行:
requestAnimFrame(this.mainGameLoop());
应该是这样的:
var self = this;
requestAnimFrame(function() {self.mainGameLoop()});
以便稍后调用您的回调作为回调,而不是立即执行。