fix: localStorage key consistency for Safe Paper Trading positions

- Fixed conflicting localStorage keys causing positions to disappear
- Added backward compatibility to load from both old and new key patterns
- Standardized to safePaperTrading_ prefix for consistency
- Updated reset function to clear all key patterns
- Positions should now persist when navigating between pages
This commit is contained in:
mindesbunister
2025-08-06 00:20:33 +02:00
parent af1b091640
commit dc8120ca61
2 changed files with 105 additions and 4 deletions

View File

@@ -426,15 +426,18 @@ export default function SafePaperTradingPage() {
}
useEffect(() => {
// Load paper trading data from localStorage
const savedTrades = localStorage.getItem('safePaperTrades')
const savedBalance = localStorage.getItem('safePaperBalance')
// Load paper trading data from localStorage using consistent keys
// Check both old and new key patterns for backward compatibility
const savedTrades = localStorage.getItem('safePaperTrading_paperTrades') || localStorage.getItem('safePaperTrades')
const savedBalance = localStorage.getItem('safePaperTrading_paperBalance') || localStorage.getItem('safePaperBalance')
if (savedTrades) {
setPaperTrades(JSON.parse(savedTrades))
console.log('📂 Restored paper trades from localStorage')
}
if (savedBalance) {
setPaperBalance(parseFloat(savedBalance))
console.log('📂 Restored paper balance from localStorage')
}
// Fetch AI learning status
@@ -456,8 +459,12 @@ export default function SafePaperTradingPage() {
}
}, [selectedTimeframes])
// Save to localStorage whenever data changes
// Save to localStorage whenever data changes - use consistent prefixed keys
useEffect(() => {
localStorage.setItem('safePaperTrading_paperTrades', JSON.stringify(paperTrades))
localStorage.setItem('safePaperTrading_paperBalance', paperBalance.toString())
// Also save to old keys for backward compatibility (temporarily)
localStorage.setItem('safePaperTrades', JSON.stringify(paperTrades))
localStorage.setItem('safePaperBalance', paperBalance.toString())
}, [paperTrades, paperBalance])
@@ -803,8 +810,15 @@ export default function SafePaperTradingPage() {
setPaperBalance(1000)
setPaperTrades([])
setCurrentAnalysis(null)
// Clear both key patterns to ensure complete reset
localStorage.removeItem('safePaperTrades')
localStorage.removeItem('safePaperBalance')
localStorage.removeItem('safePaperTrading_paperTrades')
localStorage.removeItem('safePaperTrading_paperBalance')
localStorage.removeItem('safePaperTrading_currentAnalysis')
console.log('🗑️ All safe paper trading data reset')
}
}