From c304e9c012d34ec5b8970f4a37c77cc4ccc37cde Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 21 Feb 2025 11:44:25 +0100 Subject: [PATCH] fix: Endlosschleife im DateRangePicker behoben und Initialwerte aus Redux gesetzt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - `useEffect` entfernt, um unnötige `setState`-Aufrufe zu vermeiden - `startDate` und `endDate` werden nun direkt über `useState` aus Redux (`vonDatum`, `bisDatum`) initialisiert - Verhindert unendliche Updates durch sich wiederholende `setStartDate`- und `setEndDate`-Aufrufe - Falls keine Redux-Werte vorhanden sind, wird das aktuelle Datum als Fallback verwendet --- .../kue705FO/Charts/DateRangePicker.tsx | 27 ++++++++++++------- config/webVersion.ts | 2 +- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/components/main/kabelueberwachung/kue705FO/Charts/DateRangePicker.tsx b/components/main/kabelueberwachung/kue705FO/Charts/DateRangePicker.tsx index 6603e05..6a6a703 100644 --- a/components/main/kabelueberwachung/kue705FO/Charts/DateRangePicker.tsx +++ b/components/main/kabelueberwachung/kue705FO/Charts/DateRangePicker.tsx @@ -1,6 +1,8 @@ // /components/modules/kue705FO/charts/DateRangePicker.tsx -import React, { useState, useEffect } from "react"; +import React, { useState } from "react"; import DatePicker from "react-datepicker"; +import { useSelector } from "react-redux"; +import { RootState } from "../../../../../redux/store"; import "react-datepicker/dist/react-datepicker.css"; interface DateRangePickerProps { @@ -12,14 +14,21 @@ const DateRangePicker: React.FC = ({ setVonDatum, setBisDatum, }) => { - // Nutze die Props als Standardwerte für das Datum - const [startDate, setStartDate] = useState(new Date()); - const [endDate, setEndDate] = useState(new Date()); + // Redux-Werte abrufen + const reduxVonDatum = useSelector( + (state: RootState) => state.kabelueberwachungChart.vonDatum + ); + const reduxBisDatum = useSelector( + (state: RootState) => state.kabelueberwachungChart.bisDatum + ); - useEffect(() => { - setVonDatum(startDate); - setBisDatum(endDate); - }, []); + // Direkt mit Redux-Werten initialisieren, falls vorhanden + const [startDate, setStartDate] = useState( + reduxVonDatum ? new Date(reduxVonDatum) : new Date() + ); + const [endDate, setEndDate] = useState( + reduxBisDatum ? new Date(reduxBisDatum) : new Date() + ); return (
@@ -54,7 +63,7 @@ const DateRangePicker: React.FC = ({ selectsEnd startDate={startDate} endDate={endDate} - minDate={startDate || undefined} + minDate={startDate} dateFormat="dd.MM.yyyy" className="border px-2 py-1 rounded" /> diff --git a/config/webVersion.ts b/config/webVersion.ts index e296a5f..acc0af2 100644 --- a/config/webVersion.ts +++ b/config/webVersion.ts @@ -6,5 +6,5 @@ 2: Patch oder Hotfix (Bugfixes oder kleine Änderungen). */ -const webVersion = "1.6.78"; +const webVersion = "1.6.79"; export default webVersion;