Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Vis Binding mit Zahl funktioniert nicht

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Vis Binding mit Zahl funktioniert nicht

    This topic has been deleted. Only users with topic management privileges can see it.
    • sinky
      sinky last edited by

      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
      false 
      

      typeof parseFloat funktioniert wie erwartet und gibt eine number zurück.
      Aber bei der folgenden Zeile ist es dann NaN

      Wo sitzt der Fehler?

      Grüße Marco

      OliverIO Codierknecht liv-in-sky 3 Replies Last reply Reply Quote 0
      • OliverIO
        OliverIO @sinky last edited by

        @sinky

        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
        true
        
        148.53
        string
        number
        148.53
        false
        
        1 Reply Last reply Reply Quote 0
        • Codierknecht
          Codierknecht Developer Most Active @sinky last edited by

          @sinky
          Funktioniert auch bei mir tadellos.
          acefff91-c084-42c1-b577-07ef1254417b-image.png
          Wie ist denn Dein smartmeter.0.1-0:16_7_0__255.value definiert?

          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @Codierknecht last edited by OliverIO

            @codierknecht

            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"
              }
            }
            
            Codierknecht 1 Reply Last reply Reply Quote 0
            • Codierknecht
              Codierknecht Developer Most Active @OliverIO last edited by

              @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 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @Codierknecht last edited by

                @codierknecht

                bei binding ist das eigentlich auch egal, da die meisten datentypen immer nur als string ankommen

                1 Reply Last reply Reply Quote 0
                • sinky
                  sinky last edited by

                  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

                  1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @sinky last edited by

                    @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.value
                    

                    ist ein vis fehler - der doppelpunkt ist das problem - du musst dir ein alias davon anlegen

                    1 Reply Last reply Reply Quote 1
                    • First post
                      Last post

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    954
                    Online

                    32.1k
                    Users

                    80.6k
                    Topics

                    1.3m
                    Posts

                    4
                    8
                    247
                    Loading More Posts
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes
                    Reply
                    • Reply as topic
                    Log in to reply
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                    The ioBroker Community 2014-2023
                    logo