检查给定的错误是否是从 action
/loader
抛出的 4xx/5xx Response
生成的 ErrorResponse
。
import { isRouteErrorResponse } from "react-router";
export function ErrorBoundary({ error }: Route.ErrorBoundaryProps) {
if (isRouteErrorResponse(error)) {
return (
<>
<p>Error: `${error.status}: ${error.statusText}`</p>
<p>{error.data}</p>
</>
);
}
return (
<p>Error: {error instanceof Error ? error.message : "Unknown Error"}</p>
);
}
function isRouteErrorResponse(error: any): error is ErrorResponse
要检查的错误。
如果错误是 ErrorResponse
,则为 true
,否则为 false
。