美文网首页
vue2 全局自定义指令

vue2 全局自定义指令

作者: 洪锦一 | 来源:发表于2022-11-24 16:37 被阅读0次

加在 main.js

防抖

Vue.directive('preventReClick', {
  inserted(el, binding) {
    el.addEventListener('click', () => {
      if (!el.disabled) {
        el.disabled = true
        setTimeout(() => {
          el.disabled = false
        }, binding.value || 2000)
      }
    })
  }
});

只能输入数字和小数点

Vue.directive('inputNumber', {
  inserted(el) {
    el.oninput = () => {
      el.children[0].value = el.children[0].value.replace(/[^\d.]/g, "");//先把非数字的都替换掉,除了数字和. 
      el.children[0].value = el.children[0].value.replace(/^\./g, "");//必须保证第一个为数字而不是. 
      el.children[0].value = el.children[0].value.replace(/\.{2,}/g, "");//保证只有出现一个.而没有多个. 
      el.children[0].value = el.children[0].value.replace(".", "$#$").replace(/\./g, "").replace("$#$", "."); //保证.只出现一次,而不能出现两次以上 
    };
  }
});

相关文章

网友评论

      本文标题:vue2 全局自定义指令

      本文链接:https://www.haomeiwen.com/subject/wfjxfdtx.html