函式防抖
防抖分為兩種:
一種是立即執行:頻繁觸發事件,第一次觸發時執行函式,後面觸發不會執行,停止觸發,間隔一定時間之後再觸發事件,函式才會再次執行
另一種是後執行:頻繁觸發事件,事件只會在觸發事件之後間隔定義的時間,函式才會被執行,而且只會執行最後一次觸發的事件。
在vue中對click新增防抖處理
// 防抖處理-立即執行
const on = vue.prototype.$on
vue.prototype.$on = function (event, func) , 500)
on.call(this, event, newfunc)
// 防抖處理 -- 最後執行
const on = vue.prototype.$on
vue.prototype.$on = function (event, func) , 500)
on.call(this, event, newfunc)
函式節流
定義:事件觸發後,會先執行一次事件函式,執行之後如果在規定時間間隔內再觸發事件,將不出觸發函式,超過規定的事件間隔後會再次觸發一次,如此往復
在vue中對click新增節流處理
// 節流
const on = vue.prototype.$on
vue.prototype.$on = function (event, func) {
let previous = 0
let newfunc = func
if (event === 'click') {
newfunc = function () {
const now = new date().gettime()
if (previous + 1000 <= now) {
previous = now
on.call(this, event, newfunc)
使用方式:
選擇一種,將**複製貼上在main.js即可。
vue防抖註冊全域性 vue全域性防抖和節流
防抖處理 立即執行 const on vue.prototype.on vue.prototype.on function event,func 500 on.call this,event,newfunc 防抖處理 最後執行 const on vue.prototype.on vue.protot...
vue防抖註冊全域性 vue全域性防抖和節流
函式防抖 防抖分為兩種 一種是立即執行 頻繁觸發事件,第一次觸發時執行函式,後面觸發不會執行,停止觸發,間隔一定時間之後再觸發事件,函式才會再次執行 另一種是後執行 頻繁觸發事件,事件只會在觸發事件之後間隔定義的時間,函式才會被執行,而且只會執行最後一次觸發的事件。在vue中對click新增防抖處理...
vue防抖註冊全域性 Vue最新防抖方案 必看篇
函式防抖 debounce 當持續觸發事件時,一定時間段內沒有再觸發事件,事件處理函式才會執行一次,如果設定的時間到來之前,又一次觸發了事件,就重新開始延時。舉個栗子,持續觸發scroll事件時,並不執行handle函式,當1000毫秒內沒有觸發scroll事件時,才會延時觸發scroll事件。函式...