防止快速点击按钮会重复多次调用接口,防止出现这样的情况(全局自定义指令)

防止快速点击按钮会重复多次调用接口,防止出现这样的情况

第一步:新建 plugins.js

 

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 || 3000)

                 }

            })

        }

     })

   }

}

 

第二步:在main.js中引入

import preventreclick from "./components/common/plugins.js";

Vue.use(preventreclick) // 通过插件的形式挂载

第三步:在vue文件中使用

<el-button type="danger" icon="el-icon-remove" v-preventreclick>删除仓库</el-button>

注意:preventreclick 只能小写 ,元素可以是input元素、button元素、option元素

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值