From 9a65fd04c3429cd533fb8b55cdf05b3efa4cd27c Mon Sep 17 00:00:00 2001 From: zihluwang Date: Sat, 25 Apr 2026 15:30:33 +0800 Subject: [PATCH] feat: refactor loadFirearms to use async/await and improve error handling --- src/page/firearms/index.tsx | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/page/firearms/index.tsx b/src/page/firearms/index.tsx index 5f0139d..a615e2e 100644 --- a/src/page/firearms/index.tsx +++ b/src/page/firearms/index.tsx @@ -36,21 +36,20 @@ export default function FirearmsPage() { const [editingFirearm, setEditingFirearm] = useState(null) const [deletingId, setDeletingId] = useState(null) - const loadFirearms = useCallback(() => { - return FirearmApi.getFirearms({ + const loadFirearms = useCallback(async () => { + const pagedData = await FirearmApi.getFirearms({ page: page - 1, size: 12, sortBy: "id", direction: "ASC", type: typeFilter === allTypeValue ? undefined : typeFilter, - }).then((pagedData) => { - setFirearms(pagedData.items) - setTotal(pagedData.totalElements) }) + setFirearms(pagedData.items) + setTotal(pagedData.totalElements) }, [page, typeFilter]) useEffect(() => { - loadFirearms() + void loadFirearms() }, [loadFirearms]) async function handleDelete(firearm: Firearm) { @@ -61,7 +60,7 @@ export default function FirearmsPage() { if (firearms.length === 1 && page > 1) { setPage(page - 1) } else { - loadFirearms() + void loadFirearms() } } catch { message.error("武器删除失败,请稍后重试") @@ -114,8 +113,7 @@ export default function FirearmsPage() { okText="删除" cancelText="取消" okButtonProps={{ danger: true, loading: deletingId === firearm.id }} - onConfirm={() => handleDelete(firearm)} - > + onConfirm={() => handleDelete(firearm)}> @@ -198,7 +196,7 @@ export default function FirearmsPage() { onCancel={() => setCreateModalOpen(false)} onSuccess={() => { setCreateModalOpen(false) - loadFirearms() + void loadFirearms() }} /> @@ -208,7 +206,7 @@ export default function FirearmsPage() { onCancel={() => setEditingFirearm(null)} onSuccess={() => { setEditingFirearm(null) - loadFirearms() + void loadFirearms() }} />