Ankündigung

Einklappen
Keine Ankündigung bisher.

Basic.input - list Item befüllen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Basic.input - list Item befüllen?

    Hallo, eine kurze Frage…
    Kann man mit Basic.input ein list item befüllen?

    Also in der Art:
    Code:
    {{ basic.input('', 'EG.Raum3.AlexaRadio.SenderNr(value,index=1)', 'text') }}
    Grüße, Marc

    #2
    Moin Marc,

    leider geht das nicht. Ein List-Item kann man generell nicht mit basic.input füllen. Dazu müsste man im Widget einen weiteren Modus einführen und das item als Array über den Websocket übertragen. Wenn man das umsetzt, kann man aber immer noch nicht einzelne Werte der Liste adressieren und ändern. Dazu müsste auf Seiten der Visu und des Backends das Schnittstellenprotokoll erweitert werden.

    Man kann ein item vom Typ str aber mit einem Text befüllen, der Kommas enthält. Das kann smartVISU dann wieder als list parsen. Getestet habe ich das an einer Liste mit 3 RGB-Werten, die man mit basic.color darstellen kann. Auch in shNG kann man so ein item wieder in eine Liste wandeln. Auch hierbei muss aber immer die gesamte Liste übertragen werden.

    Gruß
    Wolfram

    Kommentar


      #3
      Moin Wolfram.
      Ok, das ist schade, aber ich glaube ich bekomme das auch noch, mit ein wenig weniger Komfort, etwas anders hin.
      ich nehme jetzt das Basic.input mit einem Hilfs Item und daneben stelle ich einen Basic.trigger als speichern Button der dann eine Logik triggert wo das Hilfitem in die List gesetzt wird.
      Da es hier eh um mehrere Inputs geht, ist das nicht so schlimm.

      Dann muss man halt nach dem Befüllen des Inputs noch auf speichern drücken.

      Gibt es denn irgendeine Möglichkeit in der Visu ein einzelnes List Element anzuzeigen? Ich hab da auch nichts gefunden. Aber das geht dann wohl in die gleiche Richtung wie der erste Fall oder?

      Grüße, Marc

      Kommentar


        #4
        Moin Marc,

        bisher können über den Websocket nur ganze items übertragen werden. Die Visu abonniert die items beim Backend und bekommt dann jede Aktualisierung automatisch übermittelt. Eine Funktion, einzelne Inhalte einer Liste zu aktualisieren, gibt es in shNG nicht.

        Auf der Seite der Visu kann man ein List-item einfach als Ganzes mit basic.print anzeigen. Die Liste erscheint dann als String mit Kommas als Trennzeichen.
        Ein einzelnes Element einer Liste kann man über die Formel-Funktion von basic.print anzeigen. Die Elemente eines Arrays sind von 0 aufsteigend numeriert. Also bekomme ich z.B. das zweite Element mit
        Code:
        {{ basic.print('', 'test.varlist', 'text', 'VAR1[1]') }}
        Gruß
        Wolfram

        Kommentar

        Lädt...
        X