/* * @Author: mk 2403457699@qq.com * @Date: 2023-07-17 09:46:32 * @LastEditors: mk 2403457699@qq.com * @LastEditTime: 2023-08-10 17:49:44 * @Description: 更改提示信息,修改前是统一提示网络错误 * * */ /** * 解析epmet后台返回结果,并且执行传入的逻辑 * @param success_processor 正常返回执行的函数,代表要对data做何种操作。第一个参数是 * @param fail_processor 异常返回执行的函数,代表要对data做何种操作 * @param result 后台返回的结果json对象 */ export function EpmetResultResolver(env) { this._env = env; this.success_processor = null; // 成功回调 this.success = (success_processor) => { this.success_processor = success_processor; return this; } // 失败回调 this.fail = (fail_processor) => { this.fail_processor = fail_processor; return this; } // 执行解析逻辑 this.parse = (result) => { const { data, code, msg } = result // 失败 if (code !== 0) { // 表明后台返回错误 // 首先调用失败兜底函数 if (this.fail_processor) { this.fail_processor(); } const errorMessages = { 10007: '当前帐号已在别处登录', 10006: '登陆超时,请重新登录', 10005: 'token为空,请重新登录' }; const errorCode = response.data.code; if (errorMessages.hasOwnProperty(errorCode)) { this._env.$message.error(errorMessages[errorCode]); } else { this._env.$message.error(msg); } // // 弹出消息 // if (code < 8000) { // this._env.$message.error('服务器开小差了...') // } else { // } return; } // 成功 if (this.success_processor) { // 后台没有返回错误,正常执行 this.success_processor(data) } } // processEpmetResult // 处理result的函数 // this.processEpmetResult = (success_processor, fail_processor, result) => { // const { data, code, msg } = result // if (code !== 0) { // // 表明后台返回错误 // fail_processor(); // if (code < 8000) { // this.$message.error('服务器开小差了...') // } else { // this.$message.error(msg) // } // return // } // // if (success_processor) { // // 后台没有返回错误,正常执行 // success_processor(data) // } // } return this; }