diff --git a/components/accounts/account-table.tsx b/components/accounts/account-table.tsx index 45a86f3..94ee9e5 100644 --- a/components/accounts/account-table.tsx +++ b/components/accounts/account-table.tsx @@ -72,7 +72,7 @@ export function AccountTable({ 20 100 1000 - 100000 + 10000 diff --git a/lib/hooks/use-accounts.ts b/lib/hooks/use-accounts.ts index 186b88b..ee250ac 100644 --- a/lib/hooks/use-accounts.ts +++ b/lib/hooks/use-accounts.ts @@ -1,4 +1,4 @@ -import { useState, useEffect } from 'react'; +import { useState, useEffect, useCallback } from 'react'; import { Account, ListAccountsBody, @@ -91,7 +91,8 @@ export function useAccounts(): UseAccountsReturn { }; // 获取账户列表 - const fetchAccounts = async () => { + const fetchAccounts = useCallback(async () => { + console.log('fetchAccounts called with pagination:', pagination); setLoading(true); try { const body: ListAccountsBody = { @@ -103,8 +104,10 @@ export function useAccounts(): UseAccountsReturn { sort }; + console.log('Sending request with body:', body); const response = await apiClient.getAccountsList(body); if (response.code === BusinessCode.Success && response.data) { + console.log('Response received:', response.data.list.length, 'accounts'); setAccounts(response.data.list); setPagination(prev => ({ ...prev, @@ -118,7 +121,7 @@ export function useAccounts(): UseAccountsReturn { } finally { setLoading(false); } - }; + }, [filters, pagination.page, pagination.pageSize, sort]); // 处理筛选变化 const handleFilterChange = (key: string, value: any) => { @@ -133,7 +136,12 @@ export function useAccounts(): UseAccountsReturn { // 处理每页大小变化 const handlePageSizeChange = (pageSize: number) => { - setPagination({ ...pagination, pageSize, page: 1 }); + console.log('handlePageSizeChange called with:', pageSize); + setPagination(prev => { + const newPagination = { ...prev, pageSize, page: 1 }; + console.log('Setting new pagination:', newPagination); + return newPagination; + }); }; // 处理排序 @@ -250,7 +258,7 @@ export function useAccounts(): UseAccountsReturn { // 初始化数据 useEffect(() => { fetchAccounts(); - }, [filters, pagination.page, pagination.pageSize, sort]); + }, [fetchAccounts]); // 只在开始时获取统计数据 useEffect(() => {