Node-Red configuration
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ui_template.html 3.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <script type="text/html" data-help-name="ui_template">
  2. <p>Das template-Widget kann alle gültigen HTML- und Angular/Angular-Material-Anweisungen enthalten.</p>
  3. <p>Dieser Node kann verwendet werden, um ein dynamisches Benutzeroberflächenelement zu erstellen, dessen Erscheinungsbild
  4. basierend auf der Eingangsnachricht geändert wird, und kann Nachrichten an Node-RED zurücksenden.</p>
  5. <p><b>Zum Beispiel:</b><br>
  6. <pre style="font-size:smaller;">
  7. &lt;div layout=&quot;row&quot; layout-align=&quot;space-between&quot;&gt;
  8. &lt;p&gt;The number is&lt;/p&gt;
  9. &lt;font color=&quot;{{((msg.payload || 0) % 2 === 0) ? 'green' : 'red'}}&quot;&gt;
  10. {{(msg.payload || 0) % 2 === 0 ? 'even' : 'odd'}}
  11. &lt;/font&gt;
  12. &lt;/div&gt;</pre>
  13. Wird angezeigt, wenn die als <code>msg.payload</code> empfangene Zahl gerade oder ungerade ist.
  14. Es wird auch die Farbe des Textes zu grün geändert, wenn die Zahl gerade ist, oder rot, wenn ungerade.</p>
  15. <p>Das nächste Beispiel zeigt, wie eine eindeutige ID für Ihre Vorlage erstellt werden kann,
  16. die Standardfarbe fürs Erscheinungsbild ausgewählt wird und wie auf eingehende Nachrichten geprüft werden kann.
  17. <pre style="font-size:smaller;">
  18. &lt;div id="{{'my_'+$id}}" style="{{'color:'+theme.base_color}}"&gt;Some text&lt;/div&gt;
  19. &lt;script&gt;
  20. (function(scope) {
  21. scope.$watch('msg', function(msg) {
  22. if (msg) {
  23. // Do something when msg arrives
  24. $("#my_"+scope.$id).html(msg.payload);
  25. }
  26. });
  27. })(scope);
  28. &lt;/script&gt;</pre>
  29. Auf diese Weise erstellte Vorlagen können kopiert werden und bleiben unabhängig voneinander.</p>
  30. <p><b>Senden einer Nachricht:</b><br>
  31. <pre style="font-size:smaller;">
  32. &lt;script&gt;
  33. var value = "hello world";
  34. // or overwrite value in your callback function ...
  35. this.scope.action = function() { return value; }
  36. &lt;/script&gt;
  37. &lt;md-button ng-click=&quot;send({payload:action()})&quot;&gt;
  38. Click me to send a hello world
  39. &lt;/md-button&gt;</pre>
  40. Zeigt einen Button an, welcher beim Klicken eine Nachricht mit Payload <code>'Hello world'</code> sendet.</p>
  41. <p><b>Verwenden von <code>msg.template</code>:</b><br>
  42. Der Vorlageninhalt kann auch über <code>msg.template</code> definiert werden.
  43. So können beispielsweise externe Dateien verwendet werden.<br>
  44. Die Vorlage wird bei eingehenden Nachrichten neu geladen, wenn sie verändert wurde.<br>
  45. In das Vorlagefeld geschriebener Code wird ignoriert, wenn <code>msg.template</code> vorhanden ist.</p>
  46. <p>Die folgenden Icon-Schriftarten sind verfügbar: <a href=\"https://klarsys.github.io/angular-material-icons/\" target=\"_blank\">Material-Design-Icon</a> (z.B. <code>check</code> oder <code>close</code>), ein <a href=\"https://fontawesome.com/v4.7.0/icons/\" target=\"_blank\">Font-Awesome-Icon</a> (z.B. <code>fa-fire</code>) oder ein <a href=\"https://github.com/Paul-Reed/weather-icons-lite/blob/master/css_mappings.md\" target=\"_blank\">Wetter-Icon</a> (z.B. <code>wi-wu-sunny</code>) sein.</p><p>Des Weiteren können alle Google-Material-Icons verwendet werden, indem dem Icon-Namen <code>mi-</code> vorangestellt wird (z.B. <code>mi-videogame_asset</code>).</p>
  47. <p>Wenn eine <b>Klasse</b> angegeben ist, wird sie der übergeordneten Karte hinzugefügt. Auf diese Weise können Sie CSS-Stile auf die ui-card und ihre untergeordneten Elemente anwenden. Die Klasse kann zur Laufzeit festgelegt werden, indem eine Zeichenfolgeneigenschaft <code>msg.className</code> festgelegt wird.</p>
  48. </script>