feat: Recoil-State 'selectedAreaState' durch Redux ersetzt

- Redux-Slice 'selectedAreaSlice' erstellt mit set/clear Funktionen
- DataSheet.js verwendet dispatch(setSelectedArea(...)) für Dropdown-Auswahl
- MapComponent.js liest Bereichsauswahl über useSelector aus Redux Store
- Recoil-Importe entfernt, Zustand zentralisiert
This commit is contained in:
Ismail Ali
2025-05-18 17:21:16 +02:00
parent b6bb533339
commit 20aba9bbac
6 changed files with 40 additions and 12 deletions

View File

@@ -4,7 +4,7 @@ import { useRecoilState, useRecoilValue, useSetRecoilState } from "recoil";
import { gisStationsStaticDistrictState } from "../redux/slices/webService/gisStationsStaticDistrictSlice";
import { gisSystemStaticState } from "../redux/slices/webService/gisSystemStaticSlice.js";
import { mapLayersState } from "../redux/slices/mapLayersSlice";
import { selectedAreaState } from "../redux/slices/selectedAreaSlice";
import { setSelectedArea } from "../redux/slices/selectedAreaSlice";
import { zoomTriggerState } from "../redux/slices/zoomTriggerSlice.js";
import EditModeToggle from "./EditModeToggle";
import { polylineLayerVisibleState } from "../redux/slices/polylineLayerVisibleSlice"; // Import für Polyline-Visibility
@@ -21,10 +21,9 @@ import { setVisible } from "../redux/slices/poiLayerVisibleSlice";
function DataSheet() {
const [editMode, setEditMode] = useState(false); // Zustand für editMode
const dispatch = useDispatch();
const poiVisible = useSelector((state) => state.poiLayerVisible.visible);
const setPoiVisible = (value) => dispatch(setVisible(value));
const setSelectedArea = useSetRecoilState(selectedAreaState);
const dispatch = useDispatch();
const mapLayersVisibility = useSelector(selectMapLayersState);
const [stationListing, setStationListing] = useState([]);
const [systemListing, setSystemListing] = useState([]);
@@ -77,7 +76,7 @@ function DataSheet() {
const handleAreaChange = (event) => {
const selectedIndex = event.target.options.selectedIndex;
const areaName = event.target.options[selectedIndex].text;
setSelectedArea(areaName);
dispatch(setSelectedArea(areaName));
};
useEffect(() => {