最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue解決一個方法同時發(fā)送多個請求的問題

 更新時間:2018年09月25日 14:14:35   作者:狂野的心跳  
今天小編就為大家分享一篇vue解決一個方法同時發(fā)送多個請求的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在項目開發(fā)過程中,讓人抓狂之一的問題就是一個點擊事件,當快速點擊的時候,它會重復(fù)發(fā)送多個請求。這是不允許出現(xiàn)的。

但是怎么解決這個問題呢?

一般處理方法,就是點擊的時候,立刻將該按鈕disabled,這樣就可以避免重復(fù)發(fā)送請求了。但是我發(fā)現(xiàn)這個有一個弊端,那就是:

如果,該事件有許多的驗證,比如電話、郵箱格式是否正確呀,必填的是否填了呀等等。一旦你點擊就把按鈕disabled了,發(fā)現(xiàn)該填的沒填,回去填完后發(fā)現(xiàn)按鈕不能點了?那是因為剛才點擊的時候被你disabled了,所以還得在驗證的方法中取消按鈕的disable。就造成了你點擊的時候,第一步,將按鈕disable了,然后一步一步向下驗證,如果驗證出錯,得取消disable,當所有驗證通過了,在請求的回調(diào)函數(shù)中,成功了也要取消disable,失敗了也要取消disable,因為失敗了用戶多半還會繼續(xù)點兩次,不取消disable會讓用戶發(fā)現(xiàn)怎么點不了了。這就造成了全篇都是按鈕disable的設(shè)置與取消。一旦有修改,很難維護的。

在vue中,有一個lodash,我們只需引入就可以使用了。比如以下代碼:

<template>
 <div>
 <div class="bindBtn">
  <button class="bindDataBtn" @click="postAction">提交</button>
 </div>
 </div>
</template>
<script>
import _ from 'lodash'
export default {
 data() {
 return {
 
 }
 },
 mounted() {
 
 },
 methods: {
 sendAjax(){
  /*這里是請求的接口、參數(shù)以及回調(diào)函數(shù)等*/
 },
 postAction(){
  this.doPostAction()
 }
 },
 created(){
 this.doPostAction = _.debounce(this.sendAjax,500);
 }
}
</script>

我們首先將發(fā)送請求的ajax方法寫在一個函數(shù)里面,在這里就是sendAjax函數(shù),其次,我們引入lodash,然后將sendAjax這個函數(shù)用一個方法自定義一下,在這里就是doPostAction,其中_是我們引入的lodash,_.debounce是一個限制操作頻率的函數(shù),里面的是500是毫秒單位。

當執(zhí)行點擊事件的時候,也就是postAction函數(shù),我們只需要調(diào)用doPostAction這個函數(shù)就可以了,而那個500的功能就是你在這個時間段里,無論執(zhí)行了多少次這個點擊事件,它都只會執(zhí)行一次。

這樣就少了我們通篇disable來disable去

最后附上官網(wǎng)例子:點擊前往

以上這篇vue解決一個方法同時發(fā)送多個請求的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用vue.js?為基礎(chǔ)的仿QQ聊天室

    使用vue.js?為基礎(chǔ)的仿QQ聊天室

    這篇文章主要為大家介紹了基于vue.js的QQ聊天室,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • 基于vue3實現(xiàn)一個簡單的輸入框效果

    基于vue3實現(xiàn)一個簡單的輸入框效果

    這篇文章主要為大家詳細介紹了如何使用Vue3實現(xiàn)一個簡單的輸入框,可以實現(xiàn)輸入文字,添加表情等功能,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • Vue通過vue-router實現(xiàn)頁面跳轉(zhuǎn)的全過程

    Vue通過vue-router實現(xiàn)頁面跳轉(zhuǎn)的全過程

    這篇文章主要介紹了Vue通過vue-router實現(xiàn)頁面跳轉(zhuǎn)的操作步驟,文中有詳細的代碼示例和圖文供大家參考,對大家的學習或工作有一定的幫助,感興趣的朋友可以參考下
    2024-04-04
  • vue.js select下拉框綁定和取值方法

    vue.js select下拉框綁定和取值方法

    下面小編就為大家分享一篇vue.js select下拉框綁定和取值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 一文詳析vue3?Props的用法(父傳子)

    一文詳析vue3?Props的用法(父傳子)

    這篇文章主要給大家介紹了關(guān)于vue3?Props的用法(父傳子)的相關(guān)資料,在Vue3中Props用于組件間數(shù)據(jù)傳遞,允許類型檢查和默認值設(shè)置,文中將用法介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • Vue3中的setup語法糖、computed函數(shù)、watch函數(shù)詳解

    Vue3中的setup語法糖、computed函數(shù)、watch函數(shù)詳解

    這篇文章主要介紹了Vue3中的setup語法糖、computed函數(shù)、watch函數(shù),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • vue獲取DOM元素并設(shè)置屬性的兩種實現(xiàn)方法

    vue獲取DOM元素并設(shè)置屬性的兩種實現(xiàn)方法

    下面小編就為大家?guī)硪黄獀ue獲取DOM元素并設(shè)置屬性的兩種實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • vue如何判斷數(shù)組中的對象是否包含某個值

    vue如何判斷數(shù)組中的對象是否包含某個值

    這篇文章主要介紹了vue如何判斷數(shù)組中的對象是否包含某個值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue2老項目vite升級改造過程記錄

    vue2老項目vite升級改造過程記錄

    目前vite主要默認是支持給vue3使用的,并且如果使用官方的cli創(chuàng)建的項目一樣會默認使用vue3去構(gòu)建項目,此時對于一些vue2的老項目就顯得不友好了,下面這篇文章主要給大家介紹了關(guān)于vue2老項目vite升級改造的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • vue中keepAlive組件的作用和使用方法詳解

    vue中keepAlive組件的作用和使用方法詳解

    vue里提供了keep-alive組件用來緩存狀態(tài),這篇文章主要給大家介紹了關(guān)于vue中keepAlive組件的作用和使用方法的相關(guān)資料,需要的朋友可以參考下
    2021-07-07

最新評論

大连市| 丰镇市| 舞阳县| 洛川县| 靖远县| 尼勒克县| 永修县| 昌乐县| 乃东县| 宜川县| 奈曼旗| 集贤县| 鄢陵县| 林口县| 清新县| 微博| 漳浦县| 六盘水市| 丰县| 巫溪县| 贵阳市| 邵阳市| 江西省| 盘山县| 北票市| 喀喇沁旗| 自治县| 揭西县| 陇西县| 巢湖市| 文成县| 北辰区| 安康市| 囊谦县| 凤山县| 峨山| 灵武市| 明水县| 普定县| 正定县| 常德市|