vue前端防止按鈕在短時間內多次點擊


問題:一般情況下按鈕的點擊事件往往無外乎發送ajax請求,接口調用,處理事件等等。當點擊一個按鈕時候,如果點擊的比較快,可能會觸發多次的請求,導致接口的無效調用,這時就需要對 按鈕點擊 進行控制。

解決:

//html層
<el-button :loading="saveLoading" type="primary" @click="handleClick">確定</el-button>

//data層
isLoading:false,    //按鈕點擊loading控制,默認為false

//事件邏輯
methods: {
  handleClick() {
    //事件邏輯處理
    this.ajaxRequest()      //發送ajax請求  
  },
  async ajaxRequest() {
    if(this.saveLoading) return    //當接口請求沒響應之前,loading為true,此時通過該語句return掉不執行下面的操作,從而控制請求次數
    this.saveLoading = true
    const [err, res] = await interface()    //接口調用
    this.saveLoading = false
  }
}
            

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM