vue中使用setTimeout
在vue的函数中使用setTimeout
self.distroyTimeout = setTimeout(()=>{
self.initData()
},1000)
这时清除setTimeout需要在destoryed周期中进行
destoryed(){ window.clearTimeout(this.distroyTimeout) }
但是这样做在逻辑复杂的情况下还是出现了没有关闭setTimeout的情况,以下是一种更好的解决方案
let self = this if(self && self.distroyTimeout){ setTimeout(()=>{ if(self && self.distroyTimeout){ self.initData() } },1000) }
在这里distroyTimeout属性表示当前这个组件是否被销毁
posted on 2017-06-05 11:33 CNundefined 阅读(1542) 评论(0) 编辑 收藏 举报