NEWS
Mehrere SetState schalten nicht
-
Folgende Funktion habe ich.
Zeile 2 WIrd ordnungsgemäß ausgeführt, 3+4 leider gar nicht.
Hab ich da nen Denkfehler?schedule("59 23 * * *", function () { setState(end_str1, getState(shelly_kwh).val); setState(dif_str1, (getState(end_str1).val - getState(start_str1).val)); setState(kosten_tag_gestern, (getState(dif_str1).val * preis_kwh)); }); -
Folgende Funktion habe ich.
Zeile 2 WIrd ordnungsgemäß ausgeführt, 3+4 leider gar nicht.
Hab ich da nen Denkfehler?schedule("59 23 * * *", function () { setState(end_str1, getState(shelly_kwh).val); setState(dif_str1, (getState(end_str1).val - getState(start_str1).val)); setState(kosten_tag_gestern, (getState(dif_str1).val * preis_kwh)); }); -
@CrunkFX
Man kann den Wert, den man gerade mit setState() erneuert hat, nicht sofort mit getState() auslesen, da setState() asynchron arbeitet, d.h. zum Zeitpunkt von getState() noch nicht fertig ist. Verwende Variablen ! -
@CrunkFX sagte:
sind doch variablen oder verstehe ich dich falsch?
Das sind Datenpunkte, keine Variablen.
-
@CrunkFX sagte:
Meinst du das so?
Ja.
schedule("59 23 * * *", function () { let end = getState(shelly_kwh).val; setState(end_str1, end); let diff = end - getState(start_str1).val; setState(dif_str1, diff); setState(kosten_tag_gestern, diff * preis_kwh)); });
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden