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.
This commit is contained in:
55
hooks/useUpdateGmaData.js
Normal file
55
hooks/useUpdateGmaData.js
Normal file
@@ -0,0 +1,55 @@
|
||||
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,
|
||||
]);
|
||||
};
|
||||
Reference in New Issue
Block a user