diff --git a/web/src/views/ApplicationManagement/index.tsx b/web/src/views/ApplicationManagement/index.tsx index 4f3ec386..d5335679 100644 --- a/web/src/views/ApplicationManagement/index.tsx +++ b/web/src/views/ApplicationManagement/index.tsx @@ -2,7 +2,7 @@ * @Author: ZhaoYing * @Date: 2026-02-03 16:34:12 * @Last Modified by: ZhaoYing - * @Last Modified time: 2026-02-04 18:57:35 + * @Last Modified time: 2026-02-06 11:10:16 */ /** * Application Management Page @@ -10,11 +10,12 @@ * Supports creating, editing, and deleting applications */ -import React, { useState, useRef } from 'react'; +import React, { useState, useRef, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { Button, Row, Col, App, Select } from 'antd'; import clsx from 'clsx'; import { DeleteOutlined } from '@ant-design/icons'; +import { useSearchParams } from 'react-router-dom' import type { Application, ApplicationModalRef, Query } from './types'; import ApplicationModal, { types } from './components/ApplicationModal'; @@ -30,10 +31,21 @@ import { formatDateTime } from '@/utils/format'; const ApplicationManagement: React.FC = () => { const { t } = useTranslation(); const { modal } = App.useApp(); + const [searchParams] = useSearchParams() const [query, setQuery] = useState({} as Query); const applicationModalRef = useRef(null); const scrollListRef = useRef(null) + useEffect(() => { + // Convert URLSearchParams to a plain object for easier access + const data = Object.fromEntries(searchParams) + const { type } = data + setQuery(prev => ({ + ...prev, + type: type || undefined + })) + }, [searchParams]) + /** Refresh application list */ const refresh = () => { scrollListRef.current?.refresh(); @@ -71,8 +83,9 @@ const ApplicationManagement: React.FC = () => { return ( <> - +