diff --git a/packages/react-ape/renderer/core/render.js b/packages/react-ape/renderer/core/render.js index fbf45da..d23c798 100644 --- a/packages/react-ape/renderer/core/render.js +++ b/packages/react-ape/renderer/core/render.js @@ -23,18 +23,20 @@ function renderApeQueue( ) { if (apeContextGlobal && apeContextGlobal.renderQueue.length) { const queue = apeContextGlobal.renderQueue; + let req; + const frame = () => { - requestAnimationFrame(frame); + req = requestAnimationFrame(frame); const element = queue.shift(); element.render(apeContextGlobal, element.parentLayout); requestAnimationFrame(frame); if (!queue.length) { - cancelAnimationFrame(frame); + cancelAnimationFrame(req); onFinish(); } - } + }; frame(); } }