NEWS
Auf DP Änderungen reagieren
-
Hallo,
wenn ich auf sowas wie "Fenster auf" reagieren will, könnte ich natürlich zyklisch alle relevanten DP abklappern.
Aber gibt es nicht ach die Möglichkeit das ein DP von sich aus meldet das sich ein Wert geändert hat?Falls ja, wie setze ich das in JS um?
Danke!
-
Hallo,
wenn ich auf sowas wie "Fenster auf" reagieren will, könnte ich natürlich zyklisch alle relevanten DP abklappern.
Aber gibt es nicht ach die Möglichkeit das ein DP von sich aus meldet das sich ein Wert geändert hat?Falls ja, wie setze ich das in JS um?
Danke!
@warhammer73 sagte in Auf DP Änderungen reagieren:
Aber gibt es nicht ach die Möglichkeit das ein DP von sich aus meldet das sich ein Wert geändert hat?
Natürlich, so funktioniert js.
Man triggert auf den DP -
Hallo,
wenn ich auf sowas wie "Fenster auf" reagieren will, könnte ich natürlich zyklisch alle relevanten DP abklappern.
Aber gibt es nicht ach die Möglichkeit das ein DP von sich aus meldet das sich ein Wert geändert hat?Falls ja, wie setze ich das in JS um?
Danke!
@warhammer73 sagte: ein DP von sich aus meldet das sich ein Wert geändert hat?
Z.B. auf ein Array of IDs triggen.
const ids = ['id1','id2','id3'] on(ids, function(dp) { // triggert bei Wertänderung eines DP // Schleife über das Array zur Prüfung, ob alle Fenster geschlossen sind });Bei einheitlicher ID-Struktur oder Zuweisung zu Enum "functions" kann auch der Selektor verwendet werden.
-
@warhammer73 sagte: ein DP von sich aus meldet das sich ein Wert geändert hat?
Z.B. auf ein Array of IDs triggen.
const ids = ['id1','id2','id3'] on(ids, function(dp) { // triggert bei Wertänderung eines DP // Schleife über das Array zur Prüfung, ob alle Fenster geschlossen sind });Bei einheitlicher ID-Struktur oder Zuweisung zu Enum "functions" kann auch der Selektor verwendet werden.
@paul53 sagte in Auf DP Änderungen reagieren:
Bei einheitlicher ID-Struktur oder Zuweisung zu Enum "functions" kann auch der Selektor verwendet werden.
So habe ich das z.B. für das Zählen der offenen Fenster verwendet.
on({id: Array.prototype.slice.apply($("(functions=window)")), change: "ne"}, async function (obj) { var count = 0; var states = Array.prototype.slice.apply($("(functions=window)")); for (var index in states) { if (getState(states[index]).val) count++; } setState("0_userdata.0.Vis.fenster", count); });
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