vue實現防抖的實例代碼

防抖:防止重復點擊觸發事件

首先啥是抖? 抖就是一哆嗦!原本點一下,現在點瞭3下!不知道老鐵腦子是不是很有畫面感!哈哈哈哈哈哈

典型應用就是防止用戶多次重復點擊請求數據。

vue實現防抖方法如下:

1.首先新建一個debounce.js代碼如下

const debounce=function(fn, delay){
	let timer = null
	return function(){
		let content = this;
		let args = arguments;
		if(timer){
			clearTimeout(timer)
		}
		timer = setTimeout(()=>{
			fn.apply(content,args)
		}, delay)
	}
}
export default debounce

2.在需要防抖的vue文件中引入debounce,內容如下;這是一個輸入框的500ms的防抖

<template>
 <div class="main">
  <el-input v-model="input" @change="changeSeletc" placeholder="請輸入內容"></el-input>
 </div>
</template>
<script>
 import debounce from "../utils/debounce"
 export default {
  name: "alarm",
  data(){
   return{
    input: ''
   }
  },
  methods:{
   changeSeletc:debounce(function () {
    console.log(this.input)
   },500),
  }
 }
</script>
<style scoped>
</style>

3.效果如下圖

總結

到此這篇關於vue實現防抖的文章就介紹到這瞭,更多相關vue實現防抖內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: