Files
nodeMap/hooks/useUpdateGmaData.js
ISA 2392d410be feat: GMA-Datenaktualisierung in useUpdateGmaData Hook ausgelagert
- Fetch-Logik zum Aktualisieren der Tooltip-Werte aus MapComponent.js ausgelagert.
- Neuer Hook: useUpdateGmaData im hooks-Verzeichnis hinzugefügt.
- Verbesserung der Modularität und Wiederverwendbarkeit.
2024-12-22 06:53:07 +01:00

56 lines
1.3 KiB
JavaScript

import { useEffect } from "react";
import { fetchGisStationsMeasurements } from "../services/fetchData";
export const useUpdateGmaData = (
map,
setGisStationsMeasurements,
mapGisStationsMeasurementsUrl,
gmaMarkers,
layers,
oms
) => {
useEffect(() => {
if (!map) return; // Sicherstellen, dass die Karte initialisiert ist
const updateGmaData = async () => {
try {
const fetchOptions = {
method: "GET",
headers: {
Connection: "close",
},
};
// Aktualisiere die Messdaten
await fetchGisStationsMeasurements(
mapGisStationsMeasurementsUrl,
setGisStationsMeasurements,
fetchOptions
);
// Aktualisiere die Marker-Layer
// useGmaMarkersLayer(map, gmaMarkers, GisStationsMeasurements, layers.MAP_LAYERS.GMA, oms);
} catch (error) {
console.error("Fehler beim Aktualisieren der GMA-Daten:", error);
}
};
// Initialer Datenabruf
updateGmaData();
// Intervall für periodische Updates (optional einkommentieren)
/* const intervalId = setInterval(() => {
updateGmaData();
}, 5000);
return () => clearInterval(intervalId); */
}, [
map,
gmaMarkers,
layers.MAP_LAYERS.GMA,
oms,
mapGisStationsMeasurementsUrl,
setGisStationsMeasurements,
]);
};