diff --git a/HISTORY.md b/HISTORY.md index b2be49a..84f581f 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -3,6 +3,7 @@ 迁移管理页面,在正式环境中,需要验证env中配置的密码参数才能打开 2025.05.14 0.1.5 +优化ErrorPage样式,补充了NotFoundPage deno.json中去掉 没用的 @testing-library,jsDom 2025.05.14 0.1.4 diff --git a/client/admin/components/ErrorPage.tsx b/client/admin/components/ErrorPage.tsx index fe2ff51..6f7da64 100644 --- a/client/admin/components/ErrorPage.tsx +++ b/client/admin/components/ErrorPage.tsx @@ -1,15 +1,16 @@ import React from 'react'; -import { useRouteError } from 'react-router'; +import { useRouteError, useNavigate } from 'react-router'; import { Alert, Button } from 'antd'; import { useTheme } from '../hooks_sys.tsx'; export const ErrorPage = () => { + const navigate = useNavigate(); const { isDark } = useTheme(); const error = useRouteError() as any; const errorMessage = error?.statusText || error?.message || '未知错误'; return ( -
@@ -29,12 +30,12 @@ export const ErrorPage = () => {
diff --git a/client/admin/components/NotFoundPage.tsx b/client/admin/components/NotFoundPage.tsx new file mode 100644 index 0000000..7392ffb --- /dev/null +++ b/client/admin/components/NotFoundPage.tsx @@ -0,0 +1,30 @@ +import React from 'react'; +import { useNavigate } from 'react-router'; +import { Button } from 'antd'; +import { useTheme } from '../hooks_sys.tsx'; + +export const NotFoundPage = () => { + const navigate = useNavigate(); + const { isDark } = useTheme(); + + return ( +
+
+

404 - 页面未找到

+

+ 您访问的页面不存在或已被移除 +

+
+ +
+
+
+ ); +}; \ No newline at end of file diff --git a/client/admin/routes.tsx b/client/admin/routes.tsx index d603e58..f29d9e9 100644 --- a/client/admin/routes.tsx +++ b/client/admin/routes.tsx @@ -3,6 +3,7 @@ import { createBrowserRouter, Navigate } from 'react-router'; import { ProtectedRoute } from './components_protected_route.tsx'; import { MainLayout } from './layouts/MainLayout.tsx'; import { ErrorPage } from './components/ErrorPage.tsx'; +import { NotFoundPage } from './components/NotFoundPage.tsx'; import { DashboardPage } from './pages_dashboard.tsx'; import { UsersPage } from './pages_users.tsx'; import { FileLibraryPage } from './pages_file_library.tsx'; @@ -80,6 +81,11 @@ export const router = createBrowserRouter([ element: , errorElement: }, + { + path: '*', + element: , + errorElement: + }, ], }, ]); \ No newline at end of file