小程序防止重复点击或重复触发事件
可设置全局变量和全局函数,直接使用app唯一实例调用,方便快捷。 在app.js下 App({
globalData: {
PageActive: true
},
preventActive (fn) {
const self = this
if (this.globalData.PageActive) {
this.globalData.PageActive = false
if (fn) fn()
setTimeout(() => {
self.globalData.PageActive = true
}, 1500); //设置该时间内重复触发只执行第一次,单位ms,按实际设置
} else {
console.log('重复点击或触发')
}
}
})
其他page下调用 index.wxml <button bindtap="tap">点击</button>
index.js Page({
tap (e) {
getApp().preventActive(()=>{
//code...
})
}
})