Les libellés sérialisables fonctionnent exactement de la même manière que les libellés normaux, sauf qu'ils sont également sérialisés au format XML. Elles ne doivent être utilisées que si vous modifiez le contenu d'une balise de manière programmatique et que vous souhaitez la sérialiser au format XML.
Champ de libellé sérialisable
Champ de libellé sérialisable sur un bloc effondré
Création
JSON
{
"type": "example_serializable_label",
"message0": "%1",
"args0": [
{
"type": "field_label_serializable",
"name": "FIELDNAME",
"text": "a serializable label"
}
]
}
JavaScript
Blockly.Blocks['example_serializable_label'] = {
init: function() {
this.appendDummyInput()
.appendField(new Blockly.FieldLabelSerializable("a serializable label"), "FIELDNAME");
}
};
Le champ de libellé sérialisable accepte une valeur facultative et une chaîne de classe CSS facultative. Les deux valeurs sont définies par défaut sur une chaîne vide.
Sérialisation
JSON
Le code JSON d'un champ de libellé sérialisable se présente comme suit:
{
"fields": {
"FIELDNAME": text
}
}
Où FIELDNAME
est une chaîne faisant référence à un champ de libellé sérialisable, et la valeur est la valeur à appliquer au champ. La valeur suit les mêmes règles que la valeur du constructeur.
XML
Le code XML d'un champ de libellé sérialisable se présente comme suit:
<field name="FIELDNAME">text</field>
L'attribut name
du nœud field
contient une chaîne faisant référence à un champ de libellé sérialisable, et le texte interne du nœud est la valeur à appliquer au champ.
Programmes de validation
Les champs de libellé sérialisables ne sont pas compatibles avec les validateurs, car ils ne sont pas modifiables par un utilisateur.