当用户使用时,点击按钮等操作时反应慢就会出现暴力点击问题,设置一定时间内不重复执行点击操作
//连点t毫秒内不重复执行
function stopClick(_this,t,succ) {
if(!_this.firstTime){//首次点击,记录时间并执行回调操作
_this.firstTime= new Date()
_this.$nextTick(()=>{
if(typeof(succ)=="function"){
succ()
}
})
}else{
let nowTime= new Date()
let dateDiff = nowTime - _this.firstTime
//非首次点击则判断是否是t毫秒后,是,执行回调并把当前时间设定为首次点击时间;否:不执行
if(dateDiff>t){
_this.firstTime= nowTime
_this.$nextTick(()=>{
if(typeof(succ)=="function"){
succ()
}
})
}
}
}
//vue页面使用:(2500毫秒内连点不执行点击操作)
stopClick(this,2500,()=>{
//后续点击操作
})