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

vue的axios取消請(qǐng)求實(shí)現(xiàn)過程

 更新時(shí)間:2025年12月04日 08:34:40   作者:羅森林  
文章介紹了如何使用axios的cancelToken功能取消請(qǐng)求,包括兩種創(chuàng)建cancelToken的方法:使用CancelToken.source工廠方法和通過傳遞executor函數(shù)創(chuàng)建,還提到了如何處理取消請(qǐng)求的原因,并給出了解決頻繁點(diǎn)擊發(fā)送請(qǐng)求問題的建議

axios取消請(qǐng)求

axios發(fā)送請(qǐng)求時(shí),添加cancelToken配置項(xiàng)可以用于取消請(qǐng)求,cancelToken的取值有兩種方式

1.使用 CancelToken.source 工廠方法創(chuàng)建cancel token

CancelToken有一個(gè)source靜態(tài)方法,調(diào)用之后返回一個(gè)對(duì)象,該對(duì)象包含一個(gè)token屬性用于標(biāo)記請(qǐng)求和一個(gè)cancel方法用于取消請(qǐng)求

    const CancelToken = axios.CancelToken;
    const source = CancelToken.source();
     axios.get('http://localhost:6003/axios/4',{
        cancelToken: source.token
      }).then(function(res) {
            console.log(res.data);
          })
    source.cancel('不想請(qǐng)求了');

2.通過傳遞一個(gè) executor 函數(shù)到 CancelToken 的構(gòu)造函數(shù)創(chuàng)建cancel token

axios有一個(gè)CancelToken屬性,他是一個(gè)類,用于獲取取消請(qǐng)求的cancel方法,獲取了該方法之后就可以在合適的地方執(zhí)行cancel()取消請(qǐng)求了。

這種方式比較麻煩,但是可以用于取消多個(gè)請(qǐng)求,你可以將c這個(gè)取消請(qǐng)求的方法push進(jìn)一個(gè)數(shù)組,然后在你需要取消多個(gè)請(qǐng)求的時(shí)候,循環(huán)這個(gè)數(shù)組,依次執(zhí)行里面的方法即可取消多個(gè)請(qǐng)求。

    let arr = [];
    const CancelToken = axios.CancelToken;
     axios.get('http://localhost:6003/axios/4',{
        cancelToken: new CancelToken(function executor(c){
            arr.push(c);
            //cancel = c;
        })
      }).then(function(res) {
            console.log(res.data);
          })
      axios.get('http://localhost:3000/axios/3',{
        cancelToken: new CancelToken(function executor(c){
            arr.push(c);
            //cancel = c;
        })
      }).then(function(res) {
            console.log(res.data);
          })
      for (let i = 0; i < arr.length; i++) {
        arr[i]('請(qǐng)求取消');
      }

注意點(diǎn)1:

cancel取消請(qǐng)求方法在調(diào)用取消請(qǐng)求的時(shí)候可以將取消原因——message字符串傳遞進(jìn)去,這樣請(qǐng)求在被取消之后會(huì)被catch捕獲,你可以在這里將取消原因打印出來或者提示給用戶,比如提示用戶不要頻繁點(diǎn)擊發(fā)送請(qǐng)求

    const CancelToken = axios.CancelToken;
    const source = CancelToken.source();
     axios.get('http://localhost:6003/axios/4',{
        cancelToken: source.token
      }).then(function(res) {
            console.log(res.data);
          }).catch(function(err) {
            if (axios.isCancel(err)) {
              console.log(err.message);
            }
          })
      source.cancel('不想請(qǐng)求了');

注意點(diǎn)2:

get的cancelToken放置在第二個(gè)參數(shù)的對(duì)象里面,post的cancelToken放置在第三個(gè)參數(shù)對(duì)象里面

    const CancelToken = axios.CancelToken;
    const source = CancelToken.source();
    axios.post('http://localhost:6003/axios',{
                username: 'lisi',
                content: 123
            },{
                headers:{
                    "Content-Type": "application/json"
                 },
                 cancelToken: source.token
               }

               ).then(function(ret){
                console.log(ret.data);
            })
      source.cancel('不想請(qǐng)求了');

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • el-select自定義指令實(shí)現(xiàn)觸底加載分頁請(qǐng)求options數(shù)據(jù)(完整代碼和接口可直接用)

    el-select自定義指令實(shí)現(xiàn)觸底加載分頁請(qǐng)求options數(shù)據(jù)(完整代碼和接口可直接用)

    某些情況下,下拉框需要做觸底加載,發(fā)請(qǐng)求,獲取option的數(shù)據(jù),下面給大家分享el-select自定義指令實(shí)現(xiàn)觸底加載分頁請(qǐng)求options數(shù)據(jù)(附上完整代碼和接口可直接用),感興趣的朋友參考下吧
    2024-02-02
  • vue2如何使用vue-i18n搭建多語言切換環(huán)境

    vue2如何使用vue-i18n搭建多語言切換環(huán)境

    這篇文章主要介紹了vue2-使用vue-i18n搭建多語言切換環(huán)境的相關(guān)知識(shí),在data(){}中獲取的變量存在更新this.$i18n.locale的值時(shí)無法自動(dòng)切換的問題,需要刷新頁面才能切換語言,感興趣的朋友一起看看吧
    2023-12-12
  • Vant主題定制如何修改顏色樣式

    Vant主題定制如何修改顏色樣式

    這篇文章主要介紹了Vant主題定制如何修改顏色樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue實(shí)現(xiàn)登錄攔截

    vue實(shí)現(xiàn)登錄攔截

    這篇文章主要介紹了vue實(shí)現(xiàn)登錄攔截,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • Vue CLI 中常用的加載器及其配置小結(jié)

    Vue CLI 中常用的加載器及其配置小結(jié)

    本文主要介紹了Vue CLI 中常用的加載器及其配置,及如何根據(jù)項(xiàng)目需求進(jìn)行自定義擴(kuò)展,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-06-06
  • 快速了解vue-cli 3.0 新特性

    快速了解vue-cli 3.0 新特性

    vue-cli 是 vue 官方團(tuán)隊(duì)推出的一款快速開發(fā) vue 項(xiàng)目的構(gòu)建工具,具有開箱即用并且提供簡(jiǎn)潔的自定義配置等功能。這篇文章主要介紹了快速了解vue-cli 3.0 新特性,需要的朋友可以參考下
    2018-02-02
  • vue elementui 動(dòng)態(tài)追加下拉框、輸入框功能

    vue elementui 動(dòng)態(tài)追加下拉框、輸入框功能

    這篇文章主要介紹了vue elementui 動(dòng)態(tài)追加下拉框、輸入框功能,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-04-04
  • vue使用canvas繪制圓環(huán)

    vue使用canvas繪制圓環(huán)

    這篇文章主要介紹了vue使用canvas繪制圓環(huán),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 詳解vue-video-player使用心得(兼容m3u8)

    詳解vue-video-player使用心得(兼容m3u8)

    這篇文章主要介紹了詳解vue-video-player使用心得(兼容m3u8),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • uniapp項(xiàng)目頁面跳轉(zhuǎn)登錄攔截uni.addInterceptor使用及說明

    uniapp項(xiàng)目頁面跳轉(zhuǎn)登錄攔截uni.addInterceptor使用及說明

    這篇文章主要介紹了uniapp項(xiàng)目頁面跳轉(zhuǎn)登錄攔截uni.addInterceptor使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2026-03-03

最新評(píng)論

温泉县| 仁化县| 长海县| 留坝县| 廉江市| 石泉县| 浠水县| 光山县| 九龙坡区| 黑河市| 宝应县| 玉溪市| 屏东市| 鄂托克前旗| 班戈县| 紫云| 威信县| 高陵县| 临朐县| 徐水县| 会泽县| 金堂县| 铜山县| 宁陕县| 陆河县| 永泰县| 兴安盟| 澜沧| 安阳县| 武强县| 监利县| 张家口市| 湛江市| 柏乡县| 陕西省| 磐石市| 甘德县| 高唐县| 平昌县| 唐河县| 郴州市|