Clear persistent budget data

Clear persistent budget data to ensure a clean state.
This commit is contained in:
gpt-engineer-app[bot]
2025-03-15 23:03:44 +00:00
parent 2ba8fdc31b
commit f8abebcac6
4 changed files with 166 additions and 78 deletions

View File

@@ -26,23 +26,47 @@ export const loadBudgetFromStorage = (): number => {
const budgetData = localStorage.getItem('budget');
if (budgetData) {
const parsedBudget = JSON.parse(budgetData);
return parsedBudget.total || 1000000;
return parsedBudget.total || 0; // 기본값을 0으로 변경
}
return 1000000; // 기본 예산
return 0; // 기본값 0으로 변경
};
// 모든 데이터 완전히 초기화
export const resetAllStorageData = (): void => {
// 트랜잭션 초기화
localStorage.removeItem('transactions');
// 모든 Storage 키 삭제
const keysToRemove = [
'transactions',
'budget',
'monthlyExpenses',
'budgetData',
'categoryBudgets',
'analyticData',
'expenseData',
'chartData',
'monthlyData',
'spendingData'
];
// 명시적으로 알려진 키들 삭제
keysToRemove.forEach(key => localStorage.removeItem(key));
// 명시적으로 트랜잭션 초기화
localStorage.setItem('transactions', JSON.stringify([]));
// 월별 지출 데이터 초기화
localStorage.removeItem('monthlyExpenses');
// 모든 예산 관련, 지출 관련 데이터 검색 및 삭제
const keywordsToFind = ['budget', 'expense', 'transaction', 'analytic', 'spending', 'chart', 'financial', 'money', 'category'];
// 예산 초기화
localStorage.removeItem('budget');
// 모든 localStorage 순회하며 키워드 포함된 항목 삭제
for (let i = 0; i < localStorage.length; i++) {
const key = localStorage.key(i);
if (key) {
const lowerKey = key.toLowerCase();
if (keywordsToFind.some(keyword => lowerKey.includes(keyword))) {
console.log(`추가 데이터 삭제: ${key}`);
localStorage.removeItem(key);
}
}
}
console.log('모든 저장소 데이터가 초기화되었습니다.');
console.log('모든 저장소 데이터가 완전히 초기화되었습니다.');
};