feat: Migration von zoomTriggerSlice von Recoil zu Redux Toolkit
- Ersetzung des Recoil Atoms 'zoomTriggerState' durch Redux Toolkit Slice. - Hinzugefügt: Aktionen für incrementZoomTrigger, decrementZoomTrigger, resetZoomTrigger und setZoomTrigger. - Implementierung von Redux-Selektoren zum Zugriff auf den zoomTrigger-Zustand. - Aktualisierung der Komponenten (MapComponent.js, DataSheet.js) auf Redux-Hooks (useSelector, useDispatch). - Registrierung des zoomTriggerReducers im rootReducer und store.js. - Überprüfung der Zoom In/Out-Funktionalität sowie Integration von Event-Handling für Mausrad und Kontextmenü.
This commit is contained in:
@@ -2,10 +2,12 @@
|
||||
import { combineReducers } from "redux";
|
||||
import currentPoiReducer from "./slices/currentPoiSlice";
|
||||
import gisStationsStaticDistrictReducer from "./slices/gisStationsStaticDistrictSlice";
|
||||
import zoomTriggerReducer from "./slices/zoomTriggerSlice";
|
||||
|
||||
const rootReducer = combineReducers({
|
||||
currentPoi: currentPoiReducer,
|
||||
gisStationsStaticDistrict: gisStationsStaticDistrictReducer,
|
||||
zoomTrigger: zoomTriggerReducer,
|
||||
});
|
||||
|
||||
export default rootReducer;
|
||||
|
||||
@@ -1,7 +1,23 @@
|
||||
// redux/slices/zoomTriggerSlice.js
|
||||
import { atom } from "recoil";
|
||||
import { createSlice } from "@reduxjs/toolkit";
|
||||
|
||||
export const zoomTriggerState = atom({
|
||||
key: "zoomTriggerState",
|
||||
default: 0, // Dies kann eine einfache Zählvariable sein, die inkrementiert wird.
|
||||
const initialState = {
|
||||
zoomTrigger: 0,
|
||||
};
|
||||
|
||||
const zoomTriggerSlice = createSlice({
|
||||
name: "zoomTrigger",
|
||||
initialState,
|
||||
reducers: {
|
||||
incrementZoomTrigger(state) {
|
||||
state.zoomTrigger += 1; // Zustand erhöhen
|
||||
},
|
||||
resetZoomTrigger(state) {
|
||||
state.zoomTrigger = 0; // Zustand zurücksetzen
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export const { incrementZoomTrigger, resetZoomTrigger } = zoomTriggerSlice.actions;
|
||||
export const selectZoomTrigger = (state) => state.zoomTrigger.zoomTrigger;
|
||||
export default zoomTriggerSlice.reducer;
|
||||
|
||||
Reference in New Issue
Block a user