if (res.code == 401 || res.code == 403) { // to re-login MessageBox.confirm('账号已退出,请重新登录', '确认登出', { confirmButtonText: '重新登录', cancelButtonText: '确认', type: 'warning' }).then(() => { console.log(2516) store.dispatch('user/resetToken').then(() => { location.reload() }).catch(err => { console.log(215) }) }).catch(async () => { await store.dispatch("user/toLogin"); location.reload() console.log(25) }) } return Promise.reject(new Error(res.message || 'Error')) } else { return res } },解释这段代码
时间: 2024-02-14 20:28:44 浏览: 126
Extjs Ext.MessageBox.confirm 确认对话框详解
这段代码是一个条件判断语句,它判断了一个变量 `res` 的属性 `code` 是否等于 401 或者等于 403。如果满足其中任一条件,就会执行相应的操作。
在这段代码中,如果 `res.code` 等于 401 或者等于 403,就会弹出一个确认框(MessageBox),提示用户账号已退出,需要重新登录。用户可以选择重新登录或者取消。如果用户选择重新登录,会调用 `resetToken` 方法重置用户的令牌(token),然后重新加载页面。如果用户取消登录,会调用 `toLogin` 方法进行登录操作,然后重新加载页面。
如果 `res.code` 不等于 401 和 403,则会返回一个 Promise 对象,该对象的状态为拒绝,并抛出一个带有消息字符串 `'Error'` 的错误对象。
总之,这段代码的作用是在特定条件下进行账号退出和重新登录的处理,并返回相应的结果或错误信息。
阅读全文