首页 > 其他 > 详细

页面防抖

时间:2021-05-10 15:39:12      阅读:13      评论:0      收藏:0      [点我收藏+]

vue全局防抖

直接放在main.js文件中

const on = Vue.prototype.$on
// 防抖处理
Vue.prototype.$on = function (event, func) {
  let timer
  let newFunc = func
  if (event === ‘click‘) {
    newFunc = function () {
      clearTimeout(timer)
      timer = setTimeout(function () {
        func.apply(this, arguments)
      }, 500)
    }
  }
 on.call(this, event, newFunc)
}

!!!注意:会对 点击按钮弹出弹窗里的按钮 有一定影响(比如打开弹窗会自动选择弹窗里两个按钮中的第一个),最简单的修改的办法是把弹窗中的按钮更换成 a 或者 div 这种底层标签

防抖是防止最开始的多次点击,如果请求数据时间很长,在发出请求后等待数据回来的这段时间再次点击还是会触发的(这个除了做禁选处理,还没找到更好的处理办法)

页面防抖

原文:https://www.cnblogs.com/dandanyajin/p/14750926.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!