diff --git a/src/store/index.js b/src/store/index.js index 780f1d6..784c309 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -18,6 +18,7 @@ export default new Vuex.Store({ cmdId: "", channelIdList: [], isRenderTab: true, + responseProcessing: false, // 用于防止重复处理相同错误状态的标志 }, getters: { token: (state) => state.token, @@ -27,6 +28,9 @@ export default new Vuex.Store({ menuPermission: (state) => state.resources, }, mutations: { + setResponseProcessing(state, status) { + state.responseProcessing = status; + }, //点击获取的左侧列表 currentData(state, currentData) { state.currentData = currentData; diff --git a/src/utils/request.js b/src/utils/request.js index 42d71e5..c7d6a05 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -1,7 +1,7 @@ import axios from "axios"; import { MessageBox, Message } from "element-ui"; import router from "../router/index"; - +import store from "../store/index"; // 确保路径正确 const service = axios.create({ // process.env.NODE_ENV === 'development' 来判断是否开发环境 // easy-mock服务挂了,暂时不使用了 @@ -21,7 +21,9 @@ service.interceptors.request.use((config) => { service.interceptors.response.use( (response) => { const res = response.data; - if (res.code !== 200) { + if (res.code !== 200 && !store.state.responseProcessing) { + store.commit("setResponseProcessing", true); // 设置状态为处理中 + if (res.code === 401) { Message({ showClose: true, @@ -31,26 +33,23 @@ service.interceptors.response.use( }); localStorage.removeItem("token"); router.push("/login"); - } - - if (res.code === 400) { + } else if (res.code === 400) { Message({ showClose: true, message: res.msg, type: "error", duration: 1500, }); - } - if (res.code === 500) { - //alert(res.msg || "Error"); - + } else if (res.code === 500) { Message({ showClose: true, - message: res.msg, + message: res.msg || "Error", type: "error", duration: 1500, }); } + + store.commit("setResponseProcessing", false); // 重置状态 return Promise.reject(new Error(res.msg || "Error")); } else { return res; diff --git a/src/views/iceWeather/icing/indexMoregy.vue b/src/views/iceWeather/icing/indexMoregy.vue deleted file mode 100644 index 347012d..0000000 --- a/src/views/iceWeather/icing/indexMoregy.vue +++ /dev/null @@ -1,198 +0,0 @@ - - - diff --git a/src/views/system/weatherIceConfig.vue b/src/views/system/weatherIceConfig.vue index b2b6301..c901d1b 100644 --- a/src/views/system/weatherIceConfig.vue +++ b/src/views/system/weatherIceConfig.vue @@ -66,8 +66,8 @@ - - + +