如何修复内部错误:递归过多?

问题描述 投票:0回答:1

有一个canvas效果需要循环,但是工作3-4分钟后就报错,然后一切就冻结了。怎么解决?

    _this.loop = function (callback) {
        callback();
        reqAnimFrame(function () {
            _this.loop(function () {
                callback();
            });});};
var reqAnimFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {
        window.setTimeout(callback, 1000 / 60);};
loops canvas
1个回答
0
投票

这应该可以解决

Uncaught InternalError: too much recursion
错误。

_this.loop = function (callback) {
    callback();
    reqAnimFrame(() => {
        _this.loop(callback);
    });
};

来源:

© www.soinside.com 2019 - 2024. All rights reserved.