feat: Implementierung eines 10-Sekunden-Intervalls für dynamische Aktualisierung von kueVersion je Slot

- SetInterval hinzugefügt, um `kueVersion` alle 10 Sekunden zu aktualisieren
- Bereinigung des Intervalls sichergestellt, um Speicherlecks zu vermeiden
This commit is contained in:
ISA
2024-10-27 18:08:07 +01:00
parent a97c093c16
commit 30626a17d6

View File

@@ -9,12 +9,12 @@ function Kue705FO({
isolationswert, isolationswert,
schleifenwiderstand, schleifenwiderstand,
modulName, modulName,
kueVersion = "V4.19",
kueOnline, kueOnline,
slotIndex, slotIndex,
tdrLocation, tdrLocation,
alarmStatus, alarmStatus,
}) { }) {
const [kueVersion, setKueVersion] = useState("V4.19");
const [currentAlarmStatus, setCurrentAlarmStatus] = useState(false); const [currentAlarmStatus, setCurrentAlarmStatus] = useState(false);
const [currentModulName, setCurrentModulName] = useState(modulName); const [currentModulName, setCurrentModulName] = useState(modulName);
const [activeButton, setActiveButton] = useState("Schleife"); const [activeButton, setActiveButton] = useState("Schleife");
@@ -411,6 +411,20 @@ function Kue705FO({
} }
}, [slotIndex, isolationswert]); }, [slotIndex, isolationswert]);
//------------------------------------------------ //------------------------------------------------
// Dynamischer Abruf des kueVersion-Werts für jeden Slot
// Dynamischer Abruf des kueVersion-Werts für jeden Slot in Intervallen
useEffect(() => {
const intervalId = setInterval(() => {
if (window.kueVersion && window.kueVersion[slotIndex]) {
setKueVersion("V" + window.kueVersion[slotIndex] / 100);
}
}, 10000); // 10000 ms = 10 Sekunden
// Bereinigung der Intervalle beim Entfernen der Komponente
return () => clearInterval(intervalId);
}, [slotIndex]);
//-------------------------------------------------
return ( return (
<div className="relative bg-gray-300 w-[116px] h-[390px] border border-gray-400 scale-110 top-3"> <div className="relative bg-gray-300 w-[116px] h-[390px] border border-gray-400 scale-110 top-3">