Files
nodeMap/components/mainComponent/hooks/useFetchWebServiceData.js

33 lines
1.4 KiB
JavaScript

// /components/mainComponent/hooks/useFetchWebServiceData.js
import { useEffect } from "react";
import fetchGisStationsStatusDistrict from "../../../services/api/fetchGisStationsStatusDistrict";
import fetchGisStationsMeasurements from "../../../services/api/fetchGisStationsMeasurements";
import fetchGisSystemStatic from "../../../services/api/fetchGisSystemStatic";
const useFetchWebServiceData = (
mapGisStationsStatusDistrictUrl,
setGisStationsStatusDistrict,
mapGisStationsMeasurementsUrl,
setGisStationsMeasurements,
mapGisSystemStaticUrl,
setGisSystemStatic,
setGisSystemStaticLoaded,
setIsDataLoaded // <-- Status aus MapComponent.js übergeben
) => {
useEffect(() => {
const fetchData = async () => {
try {
await fetchGisStationsStatusDistrict(mapGisStationsStatusDistrictUrl, setGisStationsStatusDistrict);
await fetchGisStationsMeasurements(mapGisStationsMeasurementsUrl, setGisStationsMeasurements);
await fetchGisSystemStatic(mapGisSystemStaticUrl, setGisSystemStatic, setGisSystemStaticLoaded);
setIsDataLoaded(true); // <-- Setzt den Status in MapComponent.js
} catch (error) {
console.error("Error fetching data:", error);
}
};
fetchData();
}, [mapGisStationsStatusDistrictUrl, mapGisStationsMeasurementsUrl, mapGisSystemStaticUrl]);
};
export default useFetchWebServiceData;