js定时器中如何调用函数?
export default {
methods: {
//方法1
a(){
setInterval(function () {
this.b(); //---不执行报错:this.b() is not a function---
},1000)
},
//方法2
b(){
console.log('调用成功')
}
}
}
如何解决?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
//内部function改变了this指向 用前头函数或者先声明一下this
this问题
第一种
第二种
this
的指向问题。定时器中的
this
指向window
对象而非vue
实例,在window
对象中你并没有定义b()
方法,自然会报错。把定时器回掉函数改成箭头函数,你的上下文不对。