在axios中,添加
const cacheMap = {};
响应拦截添加
try {// 删除缓存const api = res.config.url.replace(process.env.VUE_APP_BASE_API, "");if (cacheMap.hasOwnProperty(api)) {delete cacheMap[api];}} catch (err) {}
创建两个请求方法
/*** Get缓存请求*/
export const cacheGet = async (api, params) => {if (!cacheMap.hasOwnProperty(api)) {cacheMap[api] = service({url: api,method: 'get',params});}return cacheMap[api];
}/*** Post缓存请求*/
export const cachePost = async (api, data) => {if (cacheMap.hasOwnProperty(api)) {cacheMap[api] = service({url: api,method: 'post',data});}return cacheMap[api];
}
然后配合Vuex进行数据缓存