Selbst-Update: Ergebnis erscheint ohne Neuladen, Panel übersteht Neustart
Zwei Meldungen des Besitzers ("Update installieren" braucht manuelles
Neuladen, um den Neustart-Knopf zu zeigen; die "HA startet neu..."-
Anzeige ebenso) auf denselben Grund zurückgeführt: datenLaden() rief
render() nur bei Änderungen an profil/fahrten/tank/status/batt auf,
nie bei einer reinen Änderung des Versions-Sensors. Dazu ein bereits
im Code kommentiertes, bisher nur per Tab-Klick umgangenes Rennen
beim echten HA-Neustart gefunden und behoben: panel_custom baut das
Element neu auf, aber nichts zeichnete es automatisch, bis der Nutzer
irgendwo klickte. companion-app erhielt den passenden Fix für die
Neustart-Anzeige (Panel-Bug 1 betraf sie nicht, siehe AGENTS.md).
Alle drei Fixes live im Testcontainer über einen echten
homeassistant.restart bestätigt, nicht nur simuliert.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
* Datenausgabe und Zugang.
|
||||
*/
|
||||
|
||||
import { useRef, useState } from "react"
|
||||
import { useEffect, useRef, useState } from "react"
|
||||
|
||||
import { ActionButton, Feld, Seg, Switch, Tile } from "@audi-dash/ui"
|
||||
|
||||
@@ -39,6 +39,7 @@ export function Einstellungen({
|
||||
rohprofil,
|
||||
otaBuendel,
|
||||
integrationUpdate,
|
||||
verbindung,
|
||||
api,
|
||||
profilSpeichern,
|
||||
jetztAktualisieren,
|
||||
@@ -139,6 +140,19 @@ export function Einstellungen({
|
||||
}
|
||||
}
|
||||
|
||||
// Ergänzt das absichtliche Fehlen des try/finally oben: die Verbindung
|
||||
// trennt sich für die Dauer des HA-Neustarts, DatenKontext meldet das über
|
||||
// `verbindung`/`api.live.aufVerbindung()` und lädt bei "verbunden" bereits
|
||||
// integrationUpdate & Co. neu (siehe DatenKontext.tsx) - aber
|
||||
// updateNeustartLaeuft ist reiner Bildschirm-Zustand hier und blieb davon
|
||||
// unberührt. Ohne diesen Effekt stand "Home Assistant startet neu …" nach
|
||||
// einem erfolgreichen Neustart weiter da, bis die Seite von Hand neu
|
||||
// geladen wurde.
|
||||
useEffect(() => {
|
||||
if (verbindung === "verbunden" && updateNeustartLaeuft) setzeUpdateNeustartLaeuft(false)
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [verbindung])
|
||||
|
||||
if (!einstellungen || !fahrzeug) return null
|
||||
const werte = entwurf ?? einstellungen
|
||||
|
||||
|
||||
Reference in New Issue
Block a user