vue路由切換,終止正在請求的接口


應用場景與需求:

 1.當前頁面在切換tab的時候會調用不同的接口,如果來回的快速點擊那么就會在后台執行大量的接口,這種時候就需要我們手動的去清除請求

 2.vue路由快速切換,回繼續執行上一個頁面的接口,這種時候需要我們手動去清除請求

代碼:

      let CancelToken = axios.CancelToken
      let self = this
      axios.get('http://120.26.63.68:8051/book/analyse/resources_analyse/get_chart/', {
        cancelToken: new CancelToken(function executor(c) {
          self.cancel = c // 這個參數 c 就是CancelToken構造函數里面自帶的取消請求的函數,這里把該函數當參數用
        })
      }).then(res => {
        console.log(res)
      }).catch(err => {
        console.log(err,'錯誤')
      })
      setTimeout(function () {
        //只要我們去調用了這個cancel()方法,沒有完成請求的接口便會停止請求
        self.cancel()
      }, 100)

 


免責聲明!

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



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