Vue实现防抖
在Vue里实现防抖
·
用于在搜索框输入内容时,watch监听到输入框内容改变,发起axios请求获取数据的防抖
由于没有使用闭包,就把保存定时器的变量写在data里
data () {
return {
// 用于保存防抖的定时器
timeout: null,
}
}
methods: {
// 防抖函数
debounce (fn, delay) {
if (this.timeout) {
clearTimeout(this.timeout)
}
this.timeout = setTimeout(() => {
// this.getSearchSuggest()
fn()
}, delay)
},
}
watch:{
//监听输入框的输入
serchInputText(){
//传入要防抖执行的函数,延时时间
this.debounce(this.getSearchSuggest, 500)
}
}
更多推荐
已为社区贡献1条内容
所有评论(0)