关于canvas动画 requestAnimationFrame 方法缺失的问题
在电脑版的调试工具开发小程序有 requestAnimationFrame 这个方法 但在 Android 微信 6.5.16 版本中,找到这个方法,报错了 在 IOS 11 微信 6.5.18 版本中,也没有找到这个方法! 因为我需要做一个特殊的动画,需要使用 这个方法,来实现Canvas 动画,希望可能支持,谢谢! 相关代码: [代码]const app = getApp()[代码] [代码]Page({[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]startAngle:-(1/2 * Math.PI),[代码] [代码] [代码][代码]endAngle:3/2 * Math.PI,[代码] [代码] [代码][代码]xAngle:Math.PI / 180[代码][代码] [代码][代码]},[代码][代码] [代码][代码]onLoad : [代码][代码]function[代码][代码]() {[代码][代码] [代码][代码]let that = [代码][代码]this[代码][代码];[代码][代码] [代码][代码]let ctx = wx.createCanvasContext([代码][代码]'anmi'[代码][代码]);[代码] [代码] [代码][代码]let endAngle = that.data.endAngle;[代码][代码] [代码][代码]let xAngle = that.data.xAngle;[代码][代码] [代码][代码]let templateAngle = that.data.startAngle;[代码] [代码] [代码][代码]let rander = [代码][代码]function[代码][代码]() {[代码][代码] [代码][代码]if[代码][代码](templateAngle >= endAngle) {[代码][代码] [代码][代码]return[代码][代码];[代码][代码] [代码][代码]} [代码][代码]else[代码] [代码]if[代码][代码](templateAngle + xAngle > endAngle) {[代码][代码] [代码][代码]templateAngle = endAngle;[代码][代码] [代码][代码]} [代码][代码]else[代码] [代码]{[代码][代码] [代码][代码]templateAngle += xAngle;[代码][代码] [代码][代码]}[代码][代码] [代码][代码]ctx.beginPath();[代码][代码] [代码][代码]ctx.setLineWidth(10)[代码][代码] [代码][代码]ctx.setLineCap([代码][代码]'round'[代码][代码])[代码][代码] [代码][代码]ctx.setStrokeStyle([代码][代码]'#aaaaaa'[代码][代码])[代码][代码] [代码][代码]ctx.arc(100, 100, 50, that.data.startAngle, templateAngle);[代码][代码] [代码][代码]ctx.stroke();[代码][代码] [代码][代码]ctx.closePath();[代码] [代码] [代码][代码]ctx.draw()[代码] [代码] [代码][代码]requestAnimationFrame(rander);[代码][代码] [代码][代码]}[代码] [代码] [代码][代码]rander();[代码][代码] [代码] [代码] [代码][代码]}[代码][代码]})[代码]