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

溫馨提示×

溫馨提示×

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

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

vue工程全局如何設置ajax的等待動效

發布時間:2021-07-30 11:42:26 來源:億速云 閱讀:158 作者:小新 欄目:web開發

小編給大家分享一下vue工程全局如何設置ajax的等待動效,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

實現等待動效

在element-ui中,提供了兩個方法進行調用loading組件,一個是在需要遮罩的div容器中添加v-loading指令,另一種就是以服務形式調用:Loading.service(options),在本項目中,在加載數據時,進行全局遮罩,所以設置let loadingInstance = Loading.service({fullscreen:true})。關閉服務形式的調用:loadingInstance.close();

axios的攔截器

個人對攔截器的作用的理解是,在請求發送前和響應處理前,對該ajax請求進行一定的設置或者處理,方便對工程內的ajax請求進行統一處理,減少重復代碼。

 //請求攔截器
 axios.interceptors.request.use((config) => {
  // 在發送請求之前做些什么
  return config;
 }, (error) => {
  // 對請求錯誤做些什么
  return Promise.reject(error);
 });
 // 添加響應攔截器
 axios.interceptors.response.use((response) => {
  // 對響應數據做點什么
  return response;
 }, (error) => {
  // 對響應錯誤做點什么
  return Promise.reject(error);
 });

有了攔截器,我們可以想到,在ajax請求發送前開啟loading動畫,在接收響應后關閉loading動畫。但是要對每個ajax都開關一下loading動畫嗎?其實不必。只需要實現一個ajax的計數器,在個數大于0時,開啟動畫,在個數為0的時候,關閉動畫。

計數器實現

let loadingInstance;
let loadCounter = {
  count:0,
  show:() => {
    if(count < 0){
     this.count ++;
     loadingInstance = Loading.service({fullscreen:true});
    }
  },
  hide:()=>{
    if(count > 0){
      this.count --;
      this.$nextTick(()=>{//以服務的方式調用的 Loading 需要異步關閉
        loadingInstance.close();
      });
    }
  }
}

使用方法

 //請求攔截器
 axios.interceptors.request.use((config) => {
  loadCounter.show();
  return config;
 }, (error) => {
  return Promise.reject(error);
 });
 // 添加響應攔截器
 axios.interceptors.response.use((response) => {
  loadCounter.hide();
  return response;
 }, (error) => {
  return Promise.reject(error);
 });

看完了這篇文章,相信你對“vue工程全局如何設置ajax的等待動效”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節
推薦閱讀:
  1. 創建vue工程
  2. vue全局API

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

AI

四川省| 安龙县| 屏东县| 邯郸县| 资兴市| 嘉善县| 玉龙| 揭西县| 石河子市| 屏南县| 罗田县| 英吉沙县| 翁牛特旗| 柳河县| 盐津县| 海淀区| 通河县| 青岛市| 莱阳市| 扎赉特旗| 张家港市| 辽阳县| 阳高县| 丹寨县| 济阳县| 莲花县| 迁西县| 叙永县| 成安县| 涟源市| 新疆| 聂荣县| 南城县| 崇礼县| 沙洋县| 朔州市| 贺州市| 维西| 新沂市| 万山特区| 铁岭市|