Le etichette serializzabili funzionano esattamente come le etichette normali, tranne per il fatto che vengono anche serializzate in XML. Devono essere utilizzati solo se modifichi i contenuti di un'etichetta in modo programmatico e vuoi che vengano serializzati in XML.
Campo dell'etichetta serializzabile
Campo etichetta serializzabile in un blocco compresso
Creazione
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");
}
};
Il campo dell'etichetta serializzabile accetta un valore facoltativo e una stringa di classe CSS facoltativa. Per entrambi il valore predefinito è una stringa vuota.
Serializzazione
JSON
Il JSON per un campo etichetta serializzabile è il seguente:
{
"fields": {
"FIELDNAME": text
}
}
dove FIELDNAME
è una stringa che fa riferimento a un campo etichetta serializzabile e il valore è il valore da applicare al campo. Il valore segue le stesse regole del valore del costruttore.
XML
Il codice XML di un campo dell'etichetta serializzabile è il seguente:
<field name="FIELDNAME">text</field>
L'attributo name
del nodo field
contiene una stringa che fa riferimento a un campo dell'etichetta serializzabile e il testo interno del nodo è il valore da applicare al campo.
Strumenti di convalida
I campi delle etichette serializzabili non supportano gli strumenti di convalida perché non sono modificabili da un utente.