vue指令-防止重复点击
import Vue from 'vue'
// 防重复点击(指令实现)
Vue.directive('preventReClick', {
inserted (el, binding) {
el.addEventListener('click', () => {
if (!el.disabled) {
el.disabled = true
setTimeout(() => {
el.disabled = false
}, binding.value || 1000)
}
})
}
})
<button v-preventReClick>点击</button>
实现思路:点击按钮元素设置为disabled。通过定时器在吧元素复原。