1.7 KiB
1.7 KiB
🪄 useInitializeMap.js
Custom React-Hook zur Initialisierung der Leaflet-Karte.
Ermöglicht die einfache Übergabe aller nötigen Parameter und abstrahiert die initializeMap(...)-Logik.
📦 Zweck
- Führt
initializeMap(...)nur einmal aus, wennmapRefexistiert undmap === null - Kapselt die Initialisierung in ein
useEffect
🔧 Parameter
| Name | Typ | Beschreibung |
|---|---|---|
map |
LeafletMap (Zustand) |
Wird initialisiert, wenn null |
mapRef |
ref |
Referenz auf <div id="map"> |
setMap |
function |
Callback zum Setzen der Karteninstanz |
setOms |
function |
Callback für OverlappingMarkerSpiderfier |
setMenuItemAdded |
function |
Wird genutzt, um mehrfaches Menü-Setup zu verhindern |
addItemsToMapContextMenu |
function |
Logik zum Hinzufügen von Kontextmenüeinträgen |
hasRights |
boolean |
Steuerung, ob POI-Menüs angezeigt werden dürfen |
setPolylineEventsDisabled |
function |
Aktiviert/Deaktiviert Polyline-Events global |
🌐 Verwendung
In MapComponent.js:
useInitializeMap(
map,
mapRef,
setMap,
setOms,
setMenuItemAdded,
addItemsToMapContextMenu,
hasRights,
(value) => dispatch(setDisabled(value))
);
📁 Quelle
Wrappt initializeMap() aus /utils/initializeMap.js