feat: Redux-Integration für Datumsauswahl und Chart-Zoom verbessert
- `DateRangePicker.tsx` angepasst, um `vonDatum` und `bisDatum` direkt in Redux zu aktualisieren - `LoopMeasurementChart.tsx` verbessert, sodass `vonDatum` und `bisDatum` beim Zoomen mit Mausrad automatisch in Redux gespeichert werden - Chart.js `onZoom` korrekt implementiert, um Änderungen in der X-Achse sofort zu übernehmen - Redux-Updates optimiert, um unnötige `dispatch`-Aufrufe zu vermeiden
This commit is contained in:
@@ -74,7 +74,7 @@ const LoopChartActionBar: React.FC = () => {
|
||||
console.log("✅ Daten erfolgreich geladen:", jsonData);
|
||||
|
||||
if (Array.isArray(jsonData)) {
|
||||
dispatch(setLoopMeasurementCurveChartData(jsonData));
|
||||
dispatch(setLoopMeasurementCurveChartData([...jsonData])); // Erzwingt eine neue Referenz
|
||||
|
||||
// Falls das Chart zum ersten Mal geöffnet wird, setze vonDatum & bisDatum
|
||||
if (!isChartOpen && jsonData.length > 0) {
|
||||
@@ -101,12 +101,14 @@ const LoopChartActionBar: React.FC = () => {
|
||||
<div className="flex justify-end items-center p-2 bg-gray-100 rounded-lg space-x-2">
|
||||
{/* Datumsauswahl */}
|
||||
<DateRangePicker
|
||||
setVonDatum={(date) =>
|
||||
dispatch(setVonDatum(date.toISOString().split("T")[0]))
|
||||
}
|
||||
setBisDatum={(date) =>
|
||||
dispatch(setBisDatum(date.toISOString().split("T")[0]))
|
||||
}
|
||||
setVonDatum={(date) => {
|
||||
const isoDate = date.toISOString().split("T")[0];
|
||||
if (isoDate !== vonDatum) dispatch(setVonDatum(isoDate));
|
||||
}}
|
||||
setBisDatum={(date) => {
|
||||
const isoDate = date.toISOString().split("T")[0];
|
||||
if (isoDate !== bisDatum) dispatch(setBisDatum(isoDate));
|
||||
}}
|
||||
/>
|
||||
|
||||
{/* Dropdown für DIA-Modus */}
|
||||
|
||||
Reference in New Issue
Block a user