From cc0e3e726aeab2876771c6b67f333aad68bb6fc8 Mon Sep 17 00:00:00 2001 From: ISA Date: Sun, 5 May 2024 16:33:49 +0200 Subject: [PATCH] =?UTF-8?q?F=C3=BCge:=20=20Funktion=20zum=20Schlie=C3=9Fen?= =?UTF-8?q?=20des=20Popups=20nach=20dem=20Hinzuf=C3=BCgen=20der=20Station?= =?UTF-8?q?=20hinzu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Implementiere die Funktion `onClose` in der `ShowAddStationPopup`-Komponente, die als Prop übergeben wird. - Rufe `onClose` in der `handleSubmit`-Funktion auf, damit das Popup-Fenster korrekt geschlossen wird, nachdem eine neue Station erfolgreich hinzugefügt wurde. - Aktualisiere die Trigger-Logik, um sicherzustellen, dass neue Stationen korrekt geladen werden. Diese Änderungen verbessern die Benutzererfahrung, indem das Popup-Fenster automatisch geschlossen wird und die Karte aktualisiert bleibt. --- components/MapComponent.js | 50 +++++++++++++++++++++---------- components/ShowAddStationPopup.js | 3 +- 2 files changed, 36 insertions(+), 17 deletions(-) diff --git a/components/MapComponent.js b/components/MapComponent.js index fc5ae4843..4112ccf6b 100644 --- a/components/MapComponent.js +++ b/components/MapComponent.js @@ -1529,23 +1529,39 @@ const MapComponent = ({ locations, onLocationUpdate }) => { return ( <>
- {/* Popup als Modal anzeigen */} + {/* Zeigt das Popup-Fenster nur, wenn `showPopup` wahr ist */} {showPopup && ( -
-
+
+
e.stopPropagation()} // Verhindert das Schließen innerhalb des Fensters + > + {/* Schließen-Button oben rechts */} + + + {/* Formular-Komponente zum Hinzufügen einer Station */} {
)}
+ +
{ +const ShowAddStationPopup = ({ onClose, map, latlng }) => { const [poiTypData2, setPoiTypData2] = useState(); // Recoil State verwenden const [name, setName] = useState(""); @@ -70,6 +70,7 @@ const handleSubmit = async (event) => { console.log("Aktueller Trigger-Wert:", trigger); // Vorheriger Wert const newTrigger = trigger + 1; console.log("Neuer Trigger-Wert:", newTrigger); // Aktualisierter Wert + onClose(); return newTrigger; }); } else {