vue 如何处理防止按钮重复点击问题
用指令的方式实现,全局注册
export default { install(Vue) { // 防止重复点击 Vue.directive('preventReClick', { inserted(el, binding) { el.addEventListener('click', () => { if (!el.disabled) { el.disabled = true; setTimeout(() => { el.disabled = false; }, binding.value || 1000) } }) } }) } }
1. 在main.js中引入上面的js文件
// 防止多次点击 import preventReClick from './common/utils/utils' Vue.use(preventReClick);
2. 在触发事件的按钮上就可以直接使用指令
<button class="comment-btn" @click="ok()" v-preventReClick="3000">确定</button>
ok() { console.log("AA:"+new Date); }
3. 3秒之后 按钮下面的事件才可再次触发
本文来自博客园,作者:黄橙,转载请注明原文链接:https://www.cnblogs.com/RedOrange/p/17095909.html

浙公网安备 33010602011771号