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!
推薦閱讀:
- 如何在Vue中使用debouce防抖函數
- uniapp項目使用防抖及節流的方案實戰
- JavaScript防抖動與節流處理
- Vue2.x-使用防抖以及節流的示例
- 如何在Vue3中實現自定義指令(超詳細!)