In einem Label-Feld wird ein String als value
und ein String als text
gespeichert. Die value
und text
eines Label-Felds sind immer identisch.
Labelfeld
Labelfeld im minimierten Block
Erstellung
JSON
{
"type": "example_label",
"message0": "a label %1 and another label",
"args0": [
{
"type": "input_dummy"
}
]
}
Der gesamte Nachrichtentext zwischen den Interpolationsargumenten wird zu Label-Strings. Alternativ können Labels explizit als Objekt oder als Text interpoliert werden. Davon wird in der Regel abgeraten, da es die Übersetzung erschwert.
{
"type": "example_label",
"message0": "%1 %2 %3",
"args0": [
{
"type": "field_label",
"text": "a label"
},
{
"type": "input_dummy"
},
"and another label"
]
}
JavaScript
Blockly.Blocks['example_label'] = {
init: function() {
this.appendDummyInput()
.appendField(new Blockly.FieldLabel('a label'));
this.appendDummyInput()
.appendField('and another label');
}
};
Die Funktion appendField
akzeptiert sowohl FieldLabel
-Objekte als auch, was häufiger vorkommt, Strings zum Erstellen von Labels.
Das Label-Feld akzeptiert einen optionalen Wert und einen optionalen CSS-Klassenstring. Beide sind standardmäßig auf einen leeren String eingestellt.
Serialisierung
Label-Felder können nicht serialisiert werden.
Wenn Ihr Label serialisiert werden soll, weil es programmatisch geändert wird, sehen Sie sich das Feld Serializable Label an.
Validatoren
Für Label-Felder werden keine Validatoren unterstützt, da sie nicht bearbeitet werden können.