fix: deviceName im Header wird zuverlässig über fetchSystemSettingsThunk geladen
- deviceName wird nun bei fehlendem Wert automatisch im Header nachgeladen - verhindert leere Anzeige beim Seitenwechsel oder Direktaufruf - fetchSystemSettingsThunk im Header eingebunden und bei Bedarf ausgeführt
This commit is contained in:
@@ -5,16 +5,16 @@ import { useRouter } from "next/router";
|
|||||||
import "bootstrap-icons/font/bootstrap-icons.css";
|
import "bootstrap-icons/font/bootstrap-icons.css";
|
||||||
import SettingsModal from "./settingsModal/SettingsModal";
|
import SettingsModal from "./settingsModal/SettingsModal";
|
||||||
import { RootState } from "../../redux/store";
|
import { RootState } from "../../redux/store";
|
||||||
import { useSelector } from "react-redux";
|
import { useSelector, useDispatch } from "react-redux";
|
||||||
|
import { AppDispatch } from "../../redux/store";
|
||||||
import decodeToken from "../../utils/decodeToken";
|
import decodeToken from "../../utils/decodeToken";
|
||||||
|
import { fetchSystemSettingsThunk } from "../../redux/thunks/fetchSystemSettingsThunk";
|
||||||
|
|
||||||
function Header() {
|
function Header() {
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const [showSettingsModal, setShowSettingsModal] = useState(false);
|
const [showSettingsModal, setShowSettingsModal] = useState(false);
|
||||||
const [isAdminLoggedIn, setIsAdminLoggedIn] = useState(false);
|
const [isAdminLoggedIn, setIsAdminLoggedIn] = useState(false);
|
||||||
const deviceName = useSelector(
|
// Removed duplicate declaration of deviceName
|
||||||
(state: RootState) => state.systemSettings.deviceName
|
|
||||||
);
|
|
||||||
|
|
||||||
const handleSettingsClick = () => setShowSettingsModal(true);
|
const handleSettingsClick = () => setShowSettingsModal(true);
|
||||||
const handleCloseSettingsModal = () => setShowSettingsModal(false);
|
const handleCloseSettingsModal = () => setShowSettingsModal(false);
|
||||||
@@ -50,6 +50,19 @@ function Header() {
|
|||||||
clearInterval(interval); // Intervall stoppen, wenn die Komponente entladen wird
|
clearInterval(interval); // Intervall stoppen, wenn die Komponente entladen wird
|
||||||
};
|
};
|
||||||
}, [isAdminLoggedIn]);
|
}, [isAdminLoggedIn]);
|
||||||
|
//----------------------------------------------------------------
|
||||||
|
const dispatch = useDispatch<AppDispatch>();
|
||||||
|
|
||||||
|
const deviceName = useSelector(
|
||||||
|
(state: RootState) => state.systemSettings.deviceName
|
||||||
|
);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!deviceName) {
|
||||||
|
dispatch(fetchSystemSettingsThunk());
|
||||||
|
}
|
||||||
|
}, [deviceName, dispatch]);
|
||||||
|
//----------------------------------------------------------------
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<header className="bg-gray-300 flex justify-between items-center w-full h-[13vh] laptop:h-[10vh] relative text-black ">
|
<header className="bg-gray-300 flex justify-between items-center w-full h-[13vh] laptop:h-[10vh] relative text-black ">
|
||||||
|
|||||||
@@ -6,5 +6,5 @@
|
|||||||
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
|
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
|
||||||
|
|
||||||
*/
|
*/
|
||||||
const webVersion = "1.6.177";
|
const webVersion = "1.6.178";
|
||||||
export default webVersion;
|
export default webVersion;
|
||||||
|
|||||||
@@ -123,6 +123,7 @@ function Kabelueberwachung() {
|
|||||||
dispatch(fetchKueDataThunk());
|
dispatch(fetchKueDataThunk());
|
||||||
}
|
}
|
||||||
}, []);
|
}, []);
|
||||||
|
//------------------------------------------------------------
|
||||||
|
|
||||||
//----------------------------------------------------------------
|
//----------------------------------------------------------------
|
||||||
return (
|
return (
|
||||||
|
|||||||
Reference in New Issue
Block a user