feat: IndexedDB-Daten in SettingsModal integriert und initialisiert

- Datenwerte wie deviceName, macAddress, IP usw. aus IndexedDB abgerufen und in den State geladen, um dynamische Aktualisierungen zu ermöglichen.
- Direktimplementierung von getFromIndexedDB im Component Code, um Produktionsimport-Probleme zu umgehen.
- Originalwerte beim ersten Laden gespeichert, um spätere Änderungen zu überprüfen und zu übertragen.
- Verbesserte Benutzerführung mit Zustandskontrollen und gezieltem Datenabruf bei Komponenten-Mount.
This commit is contained in:
ISA
2024-10-30 10:41:14 +01:00
parent cee0e03ffc
commit babef0e86f
2 changed files with 59 additions and 35 deletions

View File

@@ -3,7 +3,7 @@ import React, { useEffect, useState } from "react";
import Image from "next/image";
import "bootstrap-icons/font/bootstrap-icons.css";
import SettingsModal from "./modales/SettingsModal";
import { getFromIndexedDB } from "../utils/indexedDB";
//import { getFromIndexedDB } from "../utils/indexedDB";
function Header() {
const [stationsname, setStationsname] = useState("Lädt...");
@@ -14,7 +14,7 @@ function Header() {
const handleCloseSettingsModal = () => setShowSettingsModal(false);
const handleLogout = () => (window.location.href = "/offline.html");
//------------------------------------------------------------------
//--------- Direkte Implementierung von `getFromIndexedDB` in Header.jsx hinzugefügt, um Importprobleme zu vermeiden in Produktionsumgebung -----
//--------- Direkte Implementierung von `getFromIndexedDB` , um Importprobleme zu vermeiden in Produktionsumgebung -----
async function getFromIndexedDB(key) {
return new Promise((resolve, reject) => {
const request = indexedDB.open("CPLDatabase", 1);
@@ -29,7 +29,6 @@ function Header() {
request.onerror = () => reject(request.error);
});
}
//------------------------------------------------------------------
useEffect(() => {
const loadData = async () => {