diff --git a/frontend/src/hooks/useS2AApi.ts b/frontend/src/hooks/useS2AApi.ts index 920f38b..393506c 100644 --- a/frontend/src/hooks/useS2AApi.ts +++ b/frontend/src/hooks/useS2AApi.ts @@ -42,11 +42,11 @@ export function useS2AApi() { try { const response: AccountListResponse = await s2aClient.getAccounts(params) return { - data: response.data, - total: response.total, - page: response.page, - page_size: response.page_size, - total_pages: Math.ceil(response.total / response.page_size), + data: response.data || [], + total: response.total || 0, + page: response.page || 1, + page_size: response.page_size || 20, + total_pages: Math.ceil((response.total || 0) / (response.page_size || 20)), } } catch (err) { const message = err instanceof Error ? err.message : '获取账号列表失败' diff --git a/frontend/src/pages/Accounts.tsx b/frontend/src/pages/Accounts.tsx index e54a9ce..223c3d1 100644 --- a/frontend/src/pages/Accounts.tsx +++ b/frontend/src/pages/Accounts.tsx @@ -51,8 +51,8 @@ export default function Accounts() { const result = await getAccounts(params) if (result) { - setAccounts(result.data) - setTotal(result.total) + setAccounts(result.data || []) + setTotal(result.total || 0) } setRefreshing(false) }, [hasConfig, page, pageSize, search, statusFilter, getAccounts])