Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. gelöst: Binding für Widget Schriftfarbe

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    328

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    9
    1
    297

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    927

gelöst: Binding für Widget Schriftfarbe

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
4 Beiträge 2 Kommentatoren 350 Aufrufe 2 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A Offline
    A Offline
    Andersmacher
    schrieb am zuletzt editiert von Andersmacher
    #1

    Ich wünsche allen ein Frohes Pfingstfest!

    Folgendes Binding im VIS-Editor-Feld "CSS Font & Text/color" funktioniert bei mir problemlos und stellt als Schriftfarbe je nach Wertgröße grün oder rot ein:
    {Delta:0_userdata.0.Abweichung;Delta <0 ? "red": "green"}

    Jetzt möchte ich dies gern dynamischer gestalten und habe versucht, die 0 durch eine zweite "Variable" zu ersetzen (Daß Variablen in Bindigs wohl bereits beim Aufruf des Views durch die zu diesem Zeitpunkt aktuellen Werte ersetzt werden, ist für mich ok.), in der Art:
    {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Delta <Vergleichswert ? "red": "green"}

    Das funktioniert so jedoch offenbar nicht.

    Ich habe zwar in Foren und Dokus Beispiele mit mehr als einer Variablendefinition gefunden, so daß ich hoffe/annehme, daß der Teil

    "Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;"

    korrekt ist, jedoch habe ich keine Beispiele für einen Größer-/Kleinervergleich von zwei Variablen gefunden, sondern nur Beispiele, in denen die zwei Variablen z. B. addiert oder anderweitig zusammengerechnet werden.

    Teils wird auch darauf hingewiesen, daß Bindings zunächst alle Werte als String interpretieren und daher im Binding dieser "Wert-String" dann erst konvertiert werden muß. Das habe ich via

    "parseInt(Delta) < parseInt(Vergleichswert)"

    aber auch nicht hinbekommen und wenn Konvertierung nötig ist, warum scheint dann mein erstes Beispiel oben zu funktionieren, bei dem ich das Delta ja auch nicht konvertiere und es offenbar dennoch gegen die Zahl 0 geprüft werden kann?

    Für Hinweise wäre ich dankbar.

    ioBroker auf Raspi4B 8GB Debian(12) 64Bit

    A 1 Antwort Letzte Antwort
    0
    • A Andersmacher

      Ich wünsche allen ein Frohes Pfingstfest!

      Folgendes Binding im VIS-Editor-Feld "CSS Font & Text/color" funktioniert bei mir problemlos und stellt als Schriftfarbe je nach Wertgröße grün oder rot ein:
      {Delta:0_userdata.0.Abweichung;Delta <0 ? "red": "green"}

      Jetzt möchte ich dies gern dynamischer gestalten und habe versucht, die 0 durch eine zweite "Variable" zu ersetzen (Daß Variablen in Bindigs wohl bereits beim Aufruf des Views durch die zu diesem Zeitpunkt aktuellen Werte ersetzt werden, ist für mich ok.), in der Art:
      {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Delta <Vergleichswert ? "red": "green"}

      Das funktioniert so jedoch offenbar nicht.

      Ich habe zwar in Foren und Dokus Beispiele mit mehr als einer Variablendefinition gefunden, so daß ich hoffe/annehme, daß der Teil

      "Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;"

      korrekt ist, jedoch habe ich keine Beispiele für einen Größer-/Kleinervergleich von zwei Variablen gefunden, sondern nur Beispiele, in denen die zwei Variablen z. B. addiert oder anderweitig zusammengerechnet werden.

      Teils wird auch darauf hingewiesen, daß Bindings zunächst alle Werte als String interpretieren und daher im Binding dieser "Wert-String" dann erst konvertiert werden muß. Das habe ich via

      "parseInt(Delta) < parseInt(Vergleichswert)"

      aber auch nicht hinbekommen und wenn Konvertierung nötig ist, warum scheint dann mein erstes Beispiel oben zu funktionieren, bei dem ich das Delta ja auch nicht konvertiere und es offenbar dennoch gegen die Zahl 0 geprüft werden kann?

      Für Hinweise wäre ich dankbar.

      A Offline
      A Offline
      Andersmacher
      schrieb am zuletzt editiert von
      #2

      @andersmacher Blicke gerade nicht, warum ich meinen Beitrag nicht editieren kann, darum "antworte" ich mir ´mal selber:

      Noch folgende Hinweise/Ergänzungen:
      Ich nutze VIS V1.4.15 und habe die Visualisierung unter Windows 7 mit FireFox V100.0.2 64Bit getestet.

      Jetzt wird´s aus meiner Sicht richtig seltsam. Wenn ich zu meiner ganz oben genannten 1. Variante einfach nur eine zweite Variablendefinition hinzufüge (ohne diese ersteinmal zu benutzen, also z. B.
      {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Delta < 0 ? "red": "green"}
      kommen weiterhin rote oder grüne Wertanzeigen heraus, so wie es sein soll.

      Prüfe ich hingegen die an zweiter Stelle definierte Variable
      {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Vergleichswert < 0 ? "red": "green"}
      wird nichts angezeigt (also weder grün noch rot).

      Verändere ich die Reihenfolge der Variablendefinition auf
      {Vergleichswert:0_userdata.0.WertX;Delta:0_userdata.0.Abweichung;Vergleichswert < 0 ? "red": "green"}
      kommen wieder rote oder grüne Wertanzeigen heraus, so wie es sein soll.
      Testen auf Delta<0 klappt dann wieder nicht mehr.

      Bei der ganzen Sache scheint es vollkommen unerheblich zu sein, ob ich nur die Variable angebe oder das mit parseInt(Variable) mache.

      Es scheint also, als ob die zweite Variablendefinition das Problem ist und dadurch vielleicht das ganze Binding gar nicht "ausgeführt" wird!?

      Weiß jemand, ob/wie man die Ausführung eines Bindings kontrollieren kann. Gibt es da irgendwie/-wo soetwas wie Log, in dem man Fehlermeldungen sehen könnte? Die VIS-Instanz auf Debug zu stellen, hat mir im ioBroker-Log keine Erkenntnisse bezüglich des Bindings gebracht.

      ioBroker auf Raspi4B 8GB Debian(12) 64Bit

      OliverIOO 1 Antwort Letzte Antwort
      0
      • A Andersmacher

        @andersmacher Blicke gerade nicht, warum ich meinen Beitrag nicht editieren kann, darum "antworte" ich mir ´mal selber:

        Noch folgende Hinweise/Ergänzungen:
        Ich nutze VIS V1.4.15 und habe die Visualisierung unter Windows 7 mit FireFox V100.0.2 64Bit getestet.

        Jetzt wird´s aus meiner Sicht richtig seltsam. Wenn ich zu meiner ganz oben genannten 1. Variante einfach nur eine zweite Variablendefinition hinzufüge (ohne diese ersteinmal zu benutzen, also z. B.
        {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Delta < 0 ? "red": "green"}
        kommen weiterhin rote oder grüne Wertanzeigen heraus, so wie es sein soll.

        Prüfe ich hingegen die an zweiter Stelle definierte Variable
        {Delta:0_userdata.0.Abweichung;Vergleichswert:0_userdata.0.WertX;Vergleichswert < 0 ? "red": "green"}
        wird nichts angezeigt (also weder grün noch rot).

        Verändere ich die Reihenfolge der Variablendefinition auf
        {Vergleichswert:0_userdata.0.WertX;Delta:0_userdata.0.Abweichung;Vergleichswert < 0 ? "red": "green"}
        kommen wieder rote oder grüne Wertanzeigen heraus, so wie es sein soll.
        Testen auf Delta<0 klappt dann wieder nicht mehr.

        Bei der ganzen Sache scheint es vollkommen unerheblich zu sein, ob ich nur die Variable angebe oder das mit parseInt(Variable) mache.

        Es scheint also, als ob die zweite Variablendefinition das Problem ist und dadurch vielleicht das ganze Binding gar nicht "ausgeführt" wird!?

        Weiß jemand, ob/wie man die Ausführung eines Bindings kontrollieren kann. Gibt es da irgendwie/-wo soetwas wie Log, in dem man Fehlermeldungen sehen könnte? Die VIS-Instanz auf Debug zu stellen, hat mir im ioBroker-Log keine Erkenntnisse bezüglich des Bindings gebracht.

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #3

        @andersmacher
        bei numerischen vergleichen zur sicherheit den wert explizit auch in einen numerischen wert umwandeln (parsetoint parsetofloat, genaue schreibweise und syntax bei javascript nachschlagen)

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          Andersmacher
          schrieb am zuletzt editiert von
          #4

          @oliverio Danke für den Ratschlag, aber daran liegt es nicht, sondern am Issue#423!

          Ich hatte noch aus den Anfängen meiner "ioBroker-Laufbahn" Namen mit Umlauten für WertX und Abweichung und weil ich dann irgendwann ´mal "ein komisches Baugefühl hatte", hatte ich die Namen "vorsorglich" umbenannt in WertX und Abweichung. Daran hatte ich nun gar nicht mehr gedacht und jetzt vor kurzem versucht, diese beiden Werte in einem Binding zu nutzen, was, wie oben geschrieben, jedoch nicht geklappt hat. Nachdem mir nun das Issue #423 bekannt wurde, fiel mir meine Umbenennerei wieder ein. Die Lösung war dann, die umbenannten Werte noch einmal komplett löschen und ohne Umlaute neu anlegen. Nun klappt´s!

          Etwaige Fehler beim Ausführen der Bindings kann man übrigens im Browser-Log kontrollieren.

          ioBroker auf Raspi4B 8GB Debian(12) 64Bit

          1 Antwort Letzte Antwort
          0

          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
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          398

          Online

          32.8k

          Benutzer

          82.8k

          Themen

          1.3m

          Beiträge
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
          ioBroker Community 2014-2025
          logo
          • Anmelden

          • Du hast noch kein Konto? Registrieren

          • Anmelden oder registrieren, um zu suchen
          • Erster Beitrag
            Letzter Beitrag
          0
          • Home
          • Aktuell
          • Tags
          • Ungelesen 0
          • Kategorien
          • Unreplied
          • Beliebt
          • GitHub
          • Docu
          • Hilfe