我有js文件,我在使用requestAnimationFrame().我知道这个论点应该是回调函数.我认为我的论点是回调函数,但错误出现在js控制台中:
TypeError:Window.requestAnimationFrame的参数1不是对象.
file.js:
function screen(){
console.log("it works!")
}
function fun(word){
if (word === 'tree'){
screen()
}
window.requestAnimationFrame(fun("tree"));
Run Code Online (Sandbox Code Playgroud)
一切都很好.我在我的大项目中使用它,一切都按照我的意愿工作,但我不知道为什么我在js控制台中有错误
你将执行fun函数的结果传递给了requestAnimationFrame,这就是你得到错误的原因(因为它返回一个未定义的).
正确的方法:
function screen(){
console.log("it works!")
}
function fun(word){
if (word === 'tree'){
screen()
}
}
window.requestAnimationFrame(fun.bind(window, "tree"));
Run Code Online (Sandbox Code Playgroud)
有关bind您的更多信息,请参阅文档.
| 归档时间: |
|
| 查看次数: |
834 次 |
| 最近记录: |