uniapp-防止连续多次点击(可以带一个参数或多个参数,一个页面可以使用多个,互不影响)
uniapp-防止连续多次点击function notMoreTap(means,clickName, ...data) {// means是点击后需要执行的方法// clickName是一个变量的名字控制是否是第一次点击// data是点击需要传的参数:用逗号隔开就可以,...为剩余运算符,除去前两位传的参数,剩下的传的参数都会留在data里let that = this;if (that[cl
·
uniapp-防止连续多次点击
function notMoreTap(means,clickName, ...data) {
// means是点击后需要执行的方法
// clickName是一个变量的名字控制是否是第一次点击
// data是点击需要传的参数:用逗号隔开就可以,...为剩余运算符,除去前两位传的参数,剩下的传的参数都会留在data里
let that = this;
if (that[clickName]) {
// 第一次点击
that[clickName]= false;
if(data && data.length>0) {
if(data.length != 0 && data[0] != ''){
means(...data);
}
} else {
means();
}
setTimeout(()=> {
that[clickName] = true;
}, 2000)
} else {
uni.showToast({
title:'请不要重复点击',
icon:'none'
})
}
}
export default {
notMoreTap
}
把上面写的js文件放到与pages同级的目录common下,在main.js里面引入
import notMoreTap from ‘@/common/notMoreTap .js’
Vue.prototype.$notMoreTap = notMoreTap .notMoreTap ;
<view @tap.stop="$notMoreTap(edit,'notTap',item.id,item.tb_name)">编辑</view>
data() {
return {
notTap:true//一定要设置为true
}
}
methods: {
edit(id,tab_name){
console.log(id,tb_name);
}
}
更多推荐
已为社区贡献1条内容
所有评论(0)