FIX: Drill-down de categorias agora recarrega corretamente
- Adicionado selectedCategory nas dependências do useCallback - Criado useEffect separado para recarregar quando categoria muda - Removido loadData() dos handlers (agora feito pelo useEffect) Isso resolve o problema de estado assíncrono onde setSelectedCategory não atualizava antes de loadData() ser chamado.
This commit is contained in:
parent
bdfcc8f60b
commit
db87da95c1
@ -127,12 +127,19 @@ const Reports = () => {
|
||||
} finally {
|
||||
setLoading(false);
|
||||
}
|
||||
}, [activeTab, year, months]);
|
||||
}, [activeTab, year, months, selectedCategory]);
|
||||
|
||||
useEffect(() => {
|
||||
loadData();
|
||||
}, [loadData]);
|
||||
|
||||
// Recarrega dados quando categoria selecionada muda
|
||||
useEffect(() => {
|
||||
if (activeTab === 'category') {
|
||||
loadData();
|
||||
}
|
||||
}, [selectedCategory]);
|
||||
|
||||
const tabs = [
|
||||
{ id: 'summary', label: t('reports.summary'), icon: 'bi-clipboard-data' },
|
||||
{ id: 'category', label: t('reports.byCategory'), icon: 'bi-pie-chart' },
|
||||
@ -447,12 +454,10 @@ const Reports = () => {
|
||||
|
||||
const handleCategoryClick = (cat) => {
|
||||
setSelectedCategory(cat);
|
||||
loadData();
|
||||
};
|
||||
|
||||
const handleBackToCategories = () => {
|
||||
setSelectedCategory(null);
|
||||
loadData();
|
||||
};
|
||||
|
||||
return (
|
||||
|
||||
Loading…
Reference in New Issue
Block a user