NEWS
Vis Binding mit Zahl funktioniert nicht
-
Hallo, ich möchte in die CSS Farbe eine IF Abfrage einbauen.
{x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1 ? "#ffc404" : "red"}Aber es ist immer RED egal ob der Wert über oder unter 1 liegt.
Ein Test im HTML Widget zeigt das Problem:{smartmeter.0.1-0:16_7_0__255.value} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof x} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1} <br/>Ergibt folgende Ausgabe in der View
-148.53 string number NaN falsetypeof parseFloat funktioniert wie erwartet und gibt eine number zurück.
Aber bei der folgenden Zeile ist es dann NaNWo sitzt der Fehler?
Grüße Marco
-
Hallo, ich möchte in die CSS Farbe eine IF Abfrage einbauen.
{x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1 ? "#ffc404" : "red"}Aber es ist immer RED egal ob der Wert über oder unter 1 liegt.
Ein Test im HTML Widget zeigt das Problem:{smartmeter.0.1-0:16_7_0__255.value} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof x} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1} <br/>Ergibt folgende Ausgabe in der View
-148.53 string number NaN falsetypeof parseFloat funktioniert wie erwartet und gibt eine number zurück.
Aber bei der folgenden Zeile ist es dann NaNWo sitzt der Fehler?
Grüße Marco
funktioniert alles.
{0_userdata.0.testFolder.test} <br/> {x:0_userdata.0.testFolder.test; typeof x} <br/> {x:0_userdata.0.testFolder.test; typeof parseFloat(x)} <br/> {x:0_userdata.0.testFolder.test; parseFloat(x)} <br/> {x:0_userdata.0.testFolder.test; parseFloat(x) < 1} <br/>-148.53 string number -148.53 true148.53 string number 148.53 false -
Hallo, ich möchte in die CSS Farbe eine IF Abfrage einbauen.
{x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1 ? "#ffc404" : "red"}Aber es ist immer RED egal ob der Wert über oder unter 1 liegt.
Ein Test im HTML Widget zeigt das Problem:{smartmeter.0.1-0:16_7_0__255.value} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof x} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1} <br/>Ergibt folgende Ausgabe in der View
-148.53 string number NaN falsetypeof parseFloat funktioniert wie erwartet und gibt eine number zurück.
Aber bei der folgenden Zeile ist es dann NaNWo sitzt der Fehler?
Grüße Marco
@sinky
Funktioniert auch bei mir tadellos.

Wie ist denn Deinsmartmeter.0.1-0:16_7_0__255.valuedefiniert? -
@sinky
Funktioniert auch bei mir tadellos.

Wie ist denn Deinsmartmeter.0.1-0:16_7_0__255.valuedefiniert?zum vergleich so sieht mein datenpunkt aus.
ne normale number{ "common": { "name": "testFolder.test", "desc": "Manually created", "role": "state", "type": "number", "read": true, "write": true, "def": 0 }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1720175999472, "_id": "0_userdata.0.testFolder.test", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
zum vergleich so sieht mein datenpunkt aus.
ne normale number{ "common": { "name": "testFolder.test", "desc": "Manually created", "role": "state", "type": "number", "read": true, "write": true, "def": 0 }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1720175999472, "_id": "0_userdata.0.testFolder.test", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }@oliverio
Meiner ist string:{ "common": { "name": "teststring", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1720176543393, "_id": "0_userdata.0.Test.teststring", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
@oliverio
Meiner ist string:{ "common": { "name": "teststring", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1720176543393, "_id": "0_userdata.0.Test.teststring", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }bei binding ist das eigentlich auch egal, da die meisten datentypen immer nur als string ankommen
-
Hä, mit einem Testdatenpunkt funktioniert es bei mir dann auch.
So sieht der problematische Datenpunkt aus
{ "type": "state", "common": { "name": "1-0:16_7_0__255.value", "type": "number", "read": true, "unit": "W", "role": "value", "write": false, "custom": { "influxdb.0": { "enabled": true, "storageType": "", "aliasId": "", "changesOnly": false, "debounce": 1000, "changesRelogInterval": 0, "changesMinDelta": 0, "debounceTime": 0, "blockTime": 60000, "ignoreBelowNumber": "", "disableSkippedValueLogging": false, "enableDebugLogs": false } } }, "native": { "id": "1-0:16_7_0__255.value" }, "_id": "smartmeter.0.1-0:16_7_0__255.value", "acl": { "object": 1636, "state": 1636, "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1673021874671 }Wie bekomme ich das jetzt mit diesem Datenpunkt hin?
Gruß Marco
-
Hallo, ich möchte in die CSS Farbe eine IF Abfrage einbauen.
{x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1 ? "#ffc404" : "red"}Aber es ist immer RED egal ob der Wert über oder unter 1 liegt.
Ein Test im HTML Widget zeigt das Problem:{smartmeter.0.1-0:16_7_0__255.value} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof x} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; typeof parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x)} <br/> {x:smartmeter.0.1-0:16_7_0__255.value; parseFloat(x) < 1} <br/>Ergibt folgende Ausgabe in der View
-148.53 string number NaN falsetypeof parseFloat funktioniert wie erwartet und gibt eine number zurück.
Aber bei der folgenden Zeile ist es dann NaNWo sitzt der Fehler?
Grüße Marco
@sinky sagte in Vis Binding mit Zahl funktioniert nicht:
smartmeter.0.1-0:16_7_0__255.value
dein problem ist der name des dp:
smartmeter.0.1-0:16_7_0__255.valueist ein vis fehler - der doppelpunkt ist das problem - du musst dir ein alias davon anlegen
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