diff --git a/containers/frontend/src/pages/Dashboard.js b/containers/frontend/src/pages/Dashboard.js index 592fafa..e23a645 100644 --- a/containers/frontend/src/pages/Dashboard.js +++ b/containers/frontend/src/pages/Dashboard.js @@ -62,15 +62,20 @@ const Dashboard = () => { // Simulate real-time updates useEffect(() => { const interval = setInterval(() => { - // Simulate some data changes - setData(prev => ({ - ...prev, - systemInfo: { - ...prev.systemInfo, - cpu_usage: Math.max(10, Math.min(90, prev.systemInfo.cpu_usage + (Math.random() - 0.5) * 5)), - memory_usage: Math.max(30, Math.min(95, prev.systemInfo.memory_usage + (Math.random() - 0.5) * 3)), - } - })); + // Simulate some data changes (guard against null systemInfo) + setData(prev => { + const prevSys = prev?.systemInfo || { cpu_usage: 25, memory_usage: 50 }; + const nextCpu = Math.max(10, Math.min(90, (prevSys.cpu_usage || 25) + (Math.random() - 0.5) * 5)); + const nextMem = Math.max(30, Math.min(95, (prevSys.memory_usage || 50) + (Math.random() - 0.5) * 3)); + return { + ...prev, + systemInfo: { + ...prevSys, + cpu_usage: nextCpu, + memory_usage: nextMem, + } + }; + }); }, 5000); return () => clearInterval(interval); }, []);