代码拉取完成,页面将自动刷新
同步操作将从 ohh/react-admin 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import { useRouteError, useNavigate } from 'react-router-dom';
import { Button, Typography } from 'antd';
import { $t } from './src/locales'
import type { FallbackProps } from 'react-error-boundary'
import { localStg } from '@/utils/storage';
type Props = Partial<FallbackProps>;
const isDev = import.meta.env.DEV;
const { Title, Text } = Typography;
function HookSupportChecker() {
try {
// 尝试使用一个简单的 Hook
const error = useRouteError() as Error;
const nav = useNavigate()
const update = () => {
nav(0)
}
return { update, error }; // 如果没有抛出异常,则支持 Hook
} catch (error) {
return false; // 如果抛出异常,则不支持 Hook
}
}
const theme = localStg.get('themeColor') || '#646cff'
const ErrorPage: FC<Props> = ({ error, resetErrorBoundary }) => {
// 可以在这里根据不同的业务逻辑处理错误或者上报给日志服务
const hook = HookSupportChecker()
console.error(error);
return (
<div className="size-full min-h-520px flex-col-center gap-16px overflow-hidden">
<div className="flex text-400px text-primary">
<SvgIcon localIcon="error" />
</div>
{isDev ? <Text code>{hook ? hook.error.message : error.message}</Text> : <Title level={3}>{$t('common.errorHint')}</Title>}
<Button style={{ backgroundColor: theme }} type='primary' onClick={hook ? hook.update : resetErrorBoundary} >{$t('common.tryAlign')}</Button>
</div>
);
};
export default ErrorPage;
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。