- 按钮单击防抖指令
import Vue from "vue";
Vue.directive('debounce', {
inserted(el, binding, vnode) {
el.addEventListener('click', (e) => {
let timeout = 1000;
if(binding.value) {
timeout = binding.value;
}
const i = document.createElement('i');
i.classList = ['el-icon-loading']
el.classList.add('is-loading');
el.append(i);
el.disabled = true;
setTimeout(() => {
el.disabled = false;
el.classList.remove('is-loading');
i.remove();
}, timeout);
})
}
})