Files
nodeMap/components/mainComponent/hooks/useAutoRefreshLocationDevices.js
Ismail Ali 86d8e4924a feat: GisStationsStaticDistrict in Redux-Store integriert
- WebService-Endpoint für GisStationsStaticDistrict angebunden
- Daten beim Start der Anwendung automatisch geladen und in Redux gespeichert
- UI (DataSheet) verwendet die Daten direkt aus dem Redux-Store
- Fehlerhandling und Initialzustand in Redux-Slice verbessert
- Alte lokale Fetch-Logik entfernt, zentrale Datenhaltung über Redux
2025-03-07 22:20:21 +01:00

39 lines
1.1 KiB
JavaScript

// components/mainComponent/hooks/useAutoRefreshLocationDevices.js
/*
Das ist erstmal nur so da, falls es gebraucht wird
Diese datei ist zum automatischen aktualisieren der LocationDevices gedacht
jeder 20 Sekunden wird die Funktion fetchLocationDevicesFromDB() aufgerufen
Daten werden dann in der Redux State gespeichert
*/
import { useEffect } from "react";
import { useDispatch } from "react-redux";
import { fetchLocationDevicesFromDB } from "../../../redux/slices/db/locationDevicesFromDBSlice";
export const useAutoRefreshLocationDevices = (interval = 20000) => {
// alle 20 Sekunden
const dispatch = useDispatch();
useEffect(() => {
const fetchData = () => {
dispatch(fetchLocationDevicesFromDB());
};
fetchData(); // Sofort beim Start holen
const intervalId = setInterval(fetchData, interval);
return () => clearInterval(intervalId); // Cleanup beim Unmount
}, [dispatch, interval]);
};
/*
In MapComponent.js einbinden
import { useAutoRefreshLocationDevices } from "./hooks/useAutoRefreshLocationDevices";
const MapComponent = () => {
useAutoRefreshLocationDevices();
*/