diff --git a/src/components/ErrorDialog.vue b/src/components/ErrorDialog.vue new file mode 100644 index 0000000..fb0568f --- /dev/null +++ b/src/components/ErrorDialog.vue @@ -0,0 +1,90 @@ + + + + + + + + + + {{ props.err?.message }} + + + + 查看详情 + + + + {{ props.err?.data?.error }} + + + + + + + diff --git a/src/config.ts b/src/config.ts index 0c8fb1e..6d3d16b 100644 --- a/src/config.ts +++ b/src/config.ts @@ -2,6 +2,8 @@ import type { InternalAxiosRequestConfig } from "axios"; import { Constant, initGlobalConfig } from "@ease-forge/shared"; import { initGlobalConfigWithRuntime } from "@ease-forge/runtime"; import router from "@/router"; +import { createVNode } from "vue"; +import ErrorDialog from "@/components/ErrorDialog.vue"; function globalConfig() { window.globalConfig.customAxios = axiosInstance => { @@ -30,6 +32,7 @@ function globalConfig() { status: response?.status ?? -1, title: "系统错误", message: "", + data: response?.data, }; if (!error || !response) { err.message = "请求服务端异常"; @@ -46,7 +49,18 @@ function globalConfig() { err.message = message ?? Constant.defHttpErrorMsg[response.status] ?? "服务器异常"; } } - system.msg(err.message); + system.showDialog(createVNode(ErrorDialog, { + err, + }), { + title: '业务异常', + width: 800, + height: 120, + showClose: true, + showMax: false, + showCancelButton: false, + showOkButton: true, + okButtonText: "关闭", + }).finally(); return Promise.reject(err); }, ); diff --git a/src/views/user/roles.vue b/src/views/user/roles.vue index f592f69..63e2baa 100644 --- a/src/views/user/roles.vue +++ b/src/views/user/roles.vue @@ -1,13 +1,14 @@ - 查询 - 新增 - 删除 + 查询 + 新增 + 编辑 + 删除
{{ props.err?.data?.error }}