useRouteError
useRouteError()
Hook 主要用在errorElement
指定的组件中,用来捕获其他组件或者loader
方法、action
方法中抛出的异常。这个 Hook 的使用非常简单,调用以后就直接返回抛出的异常本身。
例如课传说下例一样定义错误边界。
function ErrorCatcher() {
const err = useRouteError();
console.error(err);
return <div>{err.message}</div>;
}
const router = createBrowserRoute([
{
path: "/",
errorElement: <ErrorCatcher />,
loader: async () => await getData(),
element: <Root />,
},
]);