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:
@@ -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')
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user