diff --git a/src/pages/ExamPage.tsx b/src/pages/ExamPage.tsx index b02edea..c2d13a3 100644 --- a/src/pages/ExamPage.tsx +++ b/src/pages/ExamPage.tsx @@ -14,6 +14,7 @@ export const ExamPage = () => { const [examModalOpen, setExamModalOpen] = useState(false); const [examFilterTags, setExamFilterTags] = useState>(new Set(['全部'])); const [loading, setLoading] = useState(false); + const [refreshSeq, setRefreshSeq] = useState(0); // 处理筛选标签切换(支持多选) const handleFilterChange = (tag: (typeof EXAM_TAGS)[number]) => { @@ -125,7 +126,7 @@ export const ExamPage = () => { .finally(() => { setLoading(false); }); - }, [getRequestPayload, examSelectedId]); + }, [getRequestPayload, examSelectedId, refreshSeq]); const selectedExamClient: ExamClient | undefined = useMemo( () => clients.find((c) => c.id === examSelectedId) || clients[0], @@ -156,7 +157,10 @@ export const ExamPage = () => { client={selectedExamClient} tab={examPanelTab} onTabChange={setExamPanelTab} - onClose={() => setExamModalOpen(false)} + onClose={() => { + setExamModalOpen(false); + setRefreshSeq((v) => v + 1); + }} /> )}