summaryrefslogtreecommitdiff
path: root/frontend/src/lib/state.ts
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/lib/state.ts')
-rw-r--r--frontend/src/lib/state.ts15
1 files changed, 15 insertions, 0 deletions
diff --git a/frontend/src/lib/state.ts b/frontend/src/lib/state.ts
new file mode 100644
index 0000000..3beb2c0
--- /dev/null
+++ b/frontend/src/lib/state.ts
@@ -0,0 +1,15 @@
+import type { ApiError } from './api';
+
+export function extractStatusMessage(err: unknown): string {
+ const e = err as Partial<ApiError>;
+ if (e && typeof e.status === 'number') {
+ return `联网出错:HTTP ${e.status} ${e.message ?? ''}`.trim();
+ }
+ if (e && e.message) return `出错:${e.message}`;
+ return '出错:未知错误,请稍后再试';
+}
+
+export function statusByName(err: unknown): string {
+ const code = (err as Partial<ApiError>)?.code ?? '';
+ return code;
+}