亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求教axios結合throttle的寫法

求教axios結合throttle的寫法

慕慕森 2019-03-13 18:15:00
使用場景:vue + axios, 彈窗點擊按鈕 > 發送請求 > 彈窗關閉,遇到問題:連續點擊按鈕,在彈窗關閉前會發送多個相同的接口,解決方案:點擊時,給按鈕一個disabled的標記來控制按鈕問題:1.如果click事件掛載在div,該怎么解決(div無disabled屬性)2.考慮采用axios結合throttle的思想,如何在全局層面上改造axios
查看完整描述

2 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

data() {

  return {

    requesting: false

  }

},

methods: {

  onButtonClick() {

    if (!this.requesting) {

      request().then(() => { this.requesting = false })

      

      this.requesting = true

    }

  }

}

最簡單的方法,在彈框按鈕回調函數里判斷下是否已經發送了請求


查看完整回答
反對 回復 2019-03-21
?
慕碼人8056858

TA貢獻1803條經驗 獲得超6個贊

要全局修改axios的話,可以參考樓上的,把請求標記requesting,存在全局狀態中,如果有用vuex就存在state里面,然后通過axios的攔截器,在請求之前和請求結束后,改變requesting。

但是這種做法的話,你只能同時進行一個請求,如果遇到要同時進行兩個以前的請求,就會失敗。

用戶體驗比較好的的做法是請求的時候,彈出一個類似加載中的動畫浮層,讓用戶無法多次點擊按鈕,請求結束后隱藏。


查看完整回答
反對 回復 2019-03-21
  • 2 回答
  • 0 關注
  • 659 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號