vue 如何處理防止按鈕重復點擊問題
處理防止按鈕重復點擊
1.在button上綁定動態(tài)的disabled
<el-button type="primary" size="mini" @click="testCode" :disabled="codeDisabled">發(fā)送驗證碼</el-button>
2.在data中定義
codeDisabled: false,
3.在點擊事件里加入定時器,60000為1分鐘不能重復點擊
?testCode() { ? ? ? this.codeDisabled = true ? ? ? setTimeout(()=>{ ? ? ? ? this.codeDisabled = false; ? ? ? },60000) ? }
vue防止重復執(zhí)行點擊事件
在vue項目中防止用戶在一定時間內頻繁點擊按鈕觸發(fā)事件
方法一:在規(guī)定時間內將按鈕禁用的方法
主要思想就是禁止用戶在一定的時間多次點擊,在一定時間內將按鈕禁用,用定時器實現(xiàn),一定時間之后用戶可再次點擊。
<template> ? <div> ? ? ? <div @click="clickHandle()">我是點擊事件</div> ? </div> </template> ? <script> export default { ? components: {}, ? data () { ? ? return { ? ? ? isDisabled: false, ? ? }; ? }, ? methods: { ? ? ? clickHandle(){ ? ? ? ? ? this.isDisabled = true; ? ? ? ? ? setTimeout(()=>{ ? ? ? ? ? ? ? this.isDisabled = false; ? ? ? ? ? },3000) ? ? ? } ? }, } </script>
方法二:用指令的方式實現(xiàn),全局注冊
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 || 1000) ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? }) ? ? ? ? ? ? } ? ? ? ? }) ? ? } }
1. 在main.js中引入上面的js文件
// 防止多次點擊 import preventReClick from './common/utils/utils' Vue.use(preventReClick);
2. 在觸發(fā)事件的按鈕上就可以直接使用指令
<div class="comment-btn" @click="submitMes()" v-preventReClick="3000">發(fā)送</div>
3. 3秒之后 按鈕下面的事件才可再次觸發(fā)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Element-UI結合遞歸組件實現(xiàn)后臺管理系統(tǒng)左側菜單
在Vue.js中使用遞歸組件可以方便地構建多層級的菜單結構,遞歸組件適用于處理具有嵌套關系的數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-09-09vuex存儲復雜參數(shù)(如對象數(shù)組等)刷新數(shù)據(jù)丟失的解決方法
今天小編就為大家分享一篇vuex存儲復雜參數(shù)(如對象數(shù)組等)刷新數(shù)據(jù)丟失的解決方法。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11詳解vue中使用express+fetch獲取本地json文件
本篇文章主要介紹了詳解vue中使用express+fetch獲取本地json文件,非常具有實用價值,需要的朋友可以參考下2017-10-10去掉vue 中的代碼規(guī)范檢測兩種方法(Eslint驗證)
我們在使用vue 腳手架時,為了規(guī)范團隊的代碼格式,會有一個代碼規(guī)范檢測,如果不符合規(guī)范就會報錯,有時候我們不想按照他的規(guī)范去寫。這時我們需要關閉,這里腳本之家小編給大家?guī)砹巳サ魐ue 中的代碼規(guī)范檢測兩種方法(Eslint驗證),一起看看吧2018-03-03