Files
nodeMap/hooks/useUpdateGmaData.js

38 lines
1.3 KiB
JavaScript

import { useEffect } from "react";
import { fetchGisStationsMeasurements } from "../services/api/fetchGisStationsMeasurements";
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]);
};