標籤:type position time ios let intercept response def config
import Vue from ‘vue‘import router from ‘../router‘import axios from ‘axios‘import { Indicator } from ‘mint-ui‘;import { Toast } from ‘mint-ui‘;axios.defaults.timeout = 30000;axios.defaults.headers.common[‘Content-Type‘] = ‘application/json;charset=UTF-8‘// http request 攔截器axios.interceptors.request.use( config => { Indicator.open({ text: ‘載入中...‘, spinnerType: ‘fading-circle‘ }); return config; }, err => { Indicator.close(); Toast({ message: ‘載入逾時‘, position: ‘middle‘, duration: 3000 }); return Promise.reject(err); });// http response 攔截器axios.interceptors.response.use( response => { let timetp = null; clearTimeout(timetp); timetp = setTimeout(()=>{ Indicator.close(); clearTimeout(timetp); },500) // Indicator.close(); return response; }, error => { if (error.response) { return Promise.reject(error) }});Vue.prototype.$ajax = axios;
利用axios的request 攔截器,response 攔截器實現載入層的效果