FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: DocCyber am 07 Januar 2024, 11:26:26

Titel: JS (und Perl ?) Experten gefragt
Beitrag von: DocCyber am 07 Januar 2024, 11:26:26
Hallo zusammen.
In meinem folgenden Code werden die Variablen room und icon übergeben.<ftui-content file="header.html" room="DG1" icon="wrench"></ftui-content>header.html sieht so aus: <ftui-icon
    name="{{icon}}" size="-1"
    @click="sendFhem(`{puOpenHeatingDetails('{{room}}')}`)">
</ftui-icon>
Bei Click auf das Icon wird in diesem Beispiel die Perl Routine puOpenHetaingDetails('DG1') augerufen; das klappt prima.


Um den Code breiter einsetzbar zu gestalten, möchte ich gern den Ausdruck für @click=... ebenfalls als Variable übergeben, etwa so:
<ftui-content file="header.html" room="DG1" icon="wrench"
  onclick=[@click="sendFhem(`{puOpenHeatingDetails('{{room}}')}`)"]></ftui-content>
<ftui-icon
    name="{{icon}}" size="-1" {{onclick}}>
</ftui-icon>
Theoretisch sollte das so funkionieren.
Praktisch stoße ich auf zwei Probleme:

1. Im Code oben habe ich an den betreffenden Stellen eckige Klammern verwendet, um das Problem zu kennzeichnen:
Ich habe nur drei mögliche Delimiter zur Verfügung [doublequote ("), singlequote (') und backtick (`)], aber ich bräuchte noch einen, um onclick="..." sauber übergeben zu können, sofern es nicht eine andere Lösung gibt.

2. In {{onclick}} steckt noch {{room}}; es geht also um geschachtelte Variablen.


Ich erreiche meine Kenntnis-Grenzen und hoffe, dass jemand hier ist, der sich da besser auskennt.