一、新建自定义文件preventReClick.js
这里定时器的时间可以修改的哦。
import Vue from 'vue'
const preventReClick = Vue.directive('preventReClick', {
inserted: function (el, binding) {
el.addEventListener('click', () => {
if (!el.disabled) {
el.disabled = true
setTimeout(() => {
el.disabled = false
}, binding.value || 3000)
}
})
}
});
export { preventReClick }
二、main.js里引入
import preventReClick from './utils/preventReClick'
三、使用
在需要放重复提交的按钮上添加v-preventReClick即可,如下:
<el-button type="primary" v-preventReClick @click="sbmit">发布</el-button>