Um sicherzustellen, dass Sie die aktualisierten Werte von poiTypData sehen können, sobald sie gesetzt sind, können Sie eine separate useEffect verwenden, die auf Änderungen von poiTypData reagiert. Dies ermöglicht es Ihnen, immer die neuesten Werte in der Konsole zu sehen, unabhängig davon, wann die Daten abgerufen und gesetzt werden
This commit is contained in:
@@ -15,7 +15,7 @@ import { gisSystemStaticState } from "../store/gisSystemState";
|
||||
import { mapLayersState } from "../store/mapLayersState";
|
||||
import { selectedAreaState } from "../store/selectedAreaState";
|
||||
import { zoomTriggerState } from "../store/zoomTriggerState";
|
||||
import { poiTypState } from '../store/poiTypState';
|
||||
import { poiTypState } from "../store/poiTypState";
|
||||
|
||||
const MapComponent = ({ locations, onLocationUpdate }) => {
|
||||
const poiLayerRef = useRef(null); // Referenz auf die Layer-Gruppe für Datenbank-Marker
|
||||
@@ -199,8 +199,8 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
||||
//------------------------------------------
|
||||
|
||||
const offlineTileLayer = "../TileMap/mapTiles/{z}/{x}/{y}.png";
|
||||
//const onlineTileLayer = "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png";
|
||||
const onlineTileLayer = "mapTiles/{z}/{x}/{y}.png";
|
||||
const onlineTileLayer = "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png";
|
||||
//const onlineTileLayer = "mapTiles/{z}/{x}/{y}.png";
|
||||
// Create map layers
|
||||
const TALAS = new L.layerGroup();
|
||||
const ECI = new L.layerGroup();
|
||||
@@ -288,15 +288,14 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
||||
setMap(initMap);
|
||||
setOms(oms);
|
||||
|
||||
initMap.on('zoomend', function() {
|
||||
// Überprüfen, ob der aktuelle Zoom außerhalb der Grenzen liegt
|
||||
if (initMap.getZoom() > 15) {
|
||||
initMap.setZoom(15);
|
||||
} else if (initMap.getZoom() < 5) {
|
||||
initMap.setZoom(5);
|
||||
}
|
||||
});
|
||||
|
||||
initMap.on("zoomend", function () {
|
||||
// Überprüfen, ob der aktuelle Zoom außerhalb der Grenzen liegt
|
||||
if (initMap.getZoom() > 15) {
|
||||
initMap.setZoom(15);
|
||||
} else if (initMap.getZoom() < 5) {
|
||||
initMap.setZoom(5);
|
||||
}
|
||||
});
|
||||
|
||||
// Nach der Initialisierung der Map und Setzen im State kannst du Funktionen aufrufen, die `map` benötigen.
|
||||
initMap.whenReady(() => {
|
||||
@@ -519,7 +518,7 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
||||
function fly(stationValue) {
|
||||
var x = 51.41321407879154;
|
||||
var y = 7.739617925303934;
|
||||
var zoom = 7
|
||||
var zoom = 7;
|
||||
|
||||
initMap.flyTo([x, y], zoom);
|
||||
}
|
||||
@@ -1509,24 +1508,27 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
||||
}
|
||||
}, [map, zoomTrigger]);
|
||||
//------------------------------------------
|
||||
// Funktion zum Abrufen der poiTyp Daten
|
||||
const [poiTypData, setPoiTypData] = useRecoilState(poiTypState); // Recoil State verwenden
|
||||
// Funktion zum Abrufen der poiTyp Daten
|
||||
const [poiTypData, setPoiTypData] = useRecoilState(poiTypState); // Recoil State verwenden
|
||||
|
||||
useEffect(() => {
|
||||
const fetchPoiTypData = async () => {
|
||||
try {
|
||||
const response = await fetch('/api/poiTyp');
|
||||
const data = await response.json();
|
||||
setPoiTypData(data); // Daten im Recoil State speichern
|
||||
console.log('Fetched poiTyp Data:', data); // Daten in der Konsole anzeigen
|
||||
} catch (error) {
|
||||
console.error('Fehler beim Abrufen der poiTyp Daten:', error);
|
||||
}
|
||||
};
|
||||
|
||||
fetchPoiTypData();
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
const fetchPoiTypData = async () => {
|
||||
try {
|
||||
const response = await fetch("/api/poiTyp");
|
||||
const data = await response.json();
|
||||
setPoiTypData(data); // Daten im Recoil State speichern
|
||||
} catch (error) {
|
||||
console.error("Fehler beim Abrufen der poiTyp Daten:", error);
|
||||
}
|
||||
};
|
||||
|
||||
fetchPoiTypData();
|
||||
}, []);
|
||||
|
||||
// Effekt zum Loggen der poiTypData, wenn sie sich ändern
|
||||
useEffect(() => {
|
||||
console.log("poiTypData aktualisiert:", poiTypData);
|
||||
}, [poiTypData]);
|
||||
|
||||
//----------------------------------------------------
|
||||
|
||||
|
||||
Reference in New Issue
Block a user