记一次requestAnimationFrame导致this指向改变问题,通过bind改回this指向
代码:

button触发play()函数,再触发里面的player.play()报错:它说找不到这个analyser

在draw函数里打印

打印出来了,看来只能正常运行一次(第一次没有报错,第二次他就不认识analyser了),requestAnimationFrame没有正常运行

那么就是requestAnimationFrame(this.draw)指向问题了
通过bind改变this.draw的指向,call/apply都是改变后立即执行函数,不适合这里。
this.requestID = requestAnimationFrame(this.draw.bind(this))
浙公网安备 33010602011771号