91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中axios防止多次觸發終止多次請求的示例代碼(防抖)

發布時間:2020-09-27 22:45:11 來源:腳本之家 閱讀:606 作者:東吳大嘟嘟 欄目:web開發

需求

例如在搜索框中,并不是你輸入一個字就需要渲染一次數據,而是取最后一次的輸入內容進行搜索。

連續按下 AAAAA ,只取最后一次按下時搜索框的內容(即:AAAAA)進行搜索。 而不是搜索跟 A(第一次按下),AA(第二次按下),AAA相關聯的內容

本文例子:  檢測用戶輸入的值,監測這個值,然后根據值調用接口查詢結果

代碼:

<template>
  <input type="text" v-model="message">
<template>
<script>
import axios from "axios";
export default {
  data(){
    return{
      message:''
  },
  watch : {
    message(newVal){     
      var that = this;
      // 取消上一次請求
      this.cancelRequest();
      axios.get('/api/searchList?cityId=10&kw='+ newVal, {       
        cancelToken: new axios.CancelToken(function(c) {
          that.source = c;
        })
      }).then((res) => {
        // 在這里處理得到的數據
        //數據邏輯處理
      }).catch((err) => {
        if (axios.isCancel(err)) {
          console.log('Rquest canceled', err.message); //請求如果被取消,這里是返回取消的message
        } else {
          //handle error
          console.log(err);
        }
      })    
    }
  },
  methods: {
     cancelRequest(){
      if(typeof this.source ==='function'){
        this.source('終止請求')
      }
    }
  }
}
</script>

 其他做法:

   可以使用 clearTimeout()   setTimeout()  截取,設置一定時常請求一次

總結

以上所述是小編給大家介紹的vue中axios防止多次觸發終止多次請求的實現方法(防抖),希望對大家有所幫助!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沅江市| 顺义区| 大宁县| 许昌县| 灵台县| 鄂伦春自治旗| 曲阜市| 永州市| 东丽区| 镇巴县| 长泰县| 唐海县| 宿松县| 邵阳市| 个旧市| 延寿县| 盱眙县| 乌兰察布市| 东宁县| 巫山县| 盘锦市| 大连市| 本溪| 永济市| 灵璧县| 大方县| 东乡| 栾川县| 大庆市| 中超| 吉水县| 屏边| 阳春市| 平舆县| 咸宁市| 绥芬河市| 武川县| 河东区| 澄江县| 布拖县| 定远县|