NEWS
createState Format
-
Hallo ist es möglich mit createState auch gleich das Format einer "number" vorzugeben, z.B. "00"?
Michael -
-
@paul53 ich benötige für eine einstellige Zahl eine führende Null
Kann ich in der Beschreibung des States eine Formatierung unterbringen?
etwa wie hier?
{read: true,write: true,desc: "Zeiteingabe Minuten ein,",type: "number",min:'0', max:'60',def:25}); -
@michihorn sagte:
Zahl eine führende Null
Dann muss der Datenpunkt vom Typ "string" sein.
{read: true, write: true, desc: "Zeiteingabe Minuten ein", type: "string"};
-
@paul53 Schade ich dachte es gibt noch ne Format Option, aber vielen Dank
-
Hi @michihorn
noch eine Anmerkung, bzw. seh das ganze mal so:
Die States sind tatsächlich als "States", also "Zustände" (Datenpunkte) gemeint in ioBroker. Dinge, die über die Variablen-Deklaration (Number, String, etc.) hinausgehen, sollten meines Erachtens nach dem Auslesen der States verarbeitet werden. Beispiel: ein Gerät misst die Spannung in Volt, jemand manipuliert den Datenpunkt: rundet, nimmt Nachkommastellen raus, usw. Damit bist du nicht mehr in der Lage, später die "originalen" Werte zu bekommen.
VIS bietet entsprechende Zahlenformatierungen für Datenpunkte. Und in JavaScript ist eh alles möglich diesbezüglich. -
@Mic Mein Problem ist folgendes, ich Visualisiere im Widget Segment Clock, Datenpunkte, das könnte wie folgt aussehen:
Ohne führende Null sieht das nicht so toll aus, entsprechende Einstellungen habe ich im Widget nicht gefunden
Michael -
@michihorn
Welchen Inhalt hat denn der Datenpunkt, auf den du im Widget verweist? Poste am besten mal ein Beispiel in Code-Tags (</>) . -
@Mic ```
createState(idAStunde, { read: true, write: true, desc: "Zeiteingabe Ausschalten Stunden ein,", type: "number", min: '0', max: '24', def: 22 }); -
@michihorn
Ok, also Zahlen von 0 - 24. Wie kommst du dann auf die Ausgabe von "6:55" im Widget? Was ist hierzu denn der Wert im Datenpunkt? -
@michihorn sagte:
createState(idAStunde, { read: true, write: true, desc: "Zeiteingabe Ausschalten Stunden ein,", type: "number", min: '0', max: '24', def: 22 });
min und max dürfen kein Strings sein (type: "number").