diff --git a/src/app/error.tsx b/src/app/error.tsx
index 463eb661..fe4d4948 100644
--- a/src/app/error.tsx
+++ b/src/app/error.tsx
@@ -13,6 +13,7 @@
import { useEffect } from "react";
import Link from "next/link";
+import { ExceptionHandler } from "@/core/errors";
import { ROUTES } from "@/router/routes";
import { Logger } from "@/utils";
@@ -29,6 +30,8 @@ export default function GlobalError({ error, unstable_retry }: ErrorProps) {
log.error("[app/error.tsx]", error);
}, [error]);
+ const errorMessage = ExceptionHandler.message(error, "Unexpected error");
+
return (
- {error.message || "Unexpected error"}
+ {errorMessage}
{error.digest ? ` (digest: ${error.digest})` : null}
diff --git a/src/app/global-error.tsx b/src/app/global-error.tsx
index 8ec10f92..16589d02 100644
--- a/src/app/global-error.tsx
+++ b/src/app/global-error.tsx
@@ -11,12 +11,19 @@
* 因为它会替换根 layout。
*/
+import { ExceptionHandler } from "@/core/errors";
+
interface GlobalErrorProps {
error: Error & { digest?: string };
unstable_retry?: () => void;
}
export default function GlobalError({ error }: GlobalErrorProps) {
+ const errorMessage = ExceptionHandler.message(
+ error,
+ "An unexpected error occurred.",
+ );
+
return (
- {error.message || "An unexpected error occurred."}
+ {errorMessage}